社区
C语言
帖子详情
问个排序的问题
plpl574
2005-05-12 08:37:46
怎样按一维数组里的数据由大到小,顺序列出数据在数组里的序号?
...全文
117
4
打赏
收藏
问个排序的问题
怎样按一维数组里的数据由大到小,顺序列出数据在数组里的序号?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
jiangbo1125
2005-05-12
打赏
举报
回复
怎样按一维数组里的数据由大到小,顺序列出数据在数组里的序号?
楼上的是不是理解错了。目的是顺序列出数据在数组里的序号?而不是要你改变数据在数组中的位置。
我建议用指针一定可以的。
flying_dancing
2005-05-12
打赏
举报
回复
//贴一个以前写的.. 冒泡的
#include <iostream>
using namespace std;
int main()
{
cout<<"输入数组个数."<<endl;
int n;
cin>>n;
int *a=new int [n];
int *b=new int [n];
for(int i=0;i<n;i++)
{
cin>>a[i];
b[i]=i+1;
}
for(i=0;i<n-1;i++)
for(int j=0;j<n-i;j++)
if(a[j]<a[j+1])
{
int temp=a[j+1];
a[j+1]=a[j];
a[j]=temp;
temp=b[j+1];
b[j+1]=b[j];
b[j]=temp;
}
for( i=0;i<n;i++)
cout<<a[i]<<" ";
cout<<endl;
for(i=0;i<n;i++)
cout<<b[i]<<" ";
delete []a;
delete []b;
system("pause");
return 0;
}
jixingzhong
2005-05-12
打赏
举报
回复
最笨的方法:
循环遍历数组,每次查找最大值,输出本身和编号,(注意在数组中标记,不要重复)
优化的话,用结构数据,将数据和编号保存在一起,对结构数组排序,按顺序输出即可
struct temp
{ int date;
int num; }
yegaofei
2005-05-12
打赏
举报
回复
用选择排序吧,每次选出最大的,然后下次就不访问该数据,再选一个最大的,依次类推……
排序
算法--7大
排序
问题
解决方法
归并
排序
具有稳定性的
排序
是:插入
排序
,归并
排序
,冒泡
排序
快速
排序
:是目前基于比较的内部
排序
中被认为是最好的方法,当待
排序
的关键字是随机分布时,快速
排序
的平均时间最短;当n较大,则应采用时间复杂度为O...
面试考点:冒泡
排序
、选择
排序
、插入
排序
、归并
排序
、快速
排序
深处开发岗,其实
排序
也是绕不开的环节,其中冒泡
排序
,选择
排序
,插入
排序
,归并
排序
,快速
排序
,堆
排序
也是我在秋招以来频繁问到的技术点
排序
算法有两块比较重要的知识点 内存消耗 :算法的内存消耗可以通过...
数据量很大的
排序
问题
大量数据如何
排序
数据量很大的
排序
问题
大量数据... 同学某天参加腾讯面试,技术面的时候,面试官问了
排序
问题
:
问题
一:若有1T的数据,需要实现由大到小
排序
,你用什么办法,说说你的思路和想法?
问题
二:有10个G的数据,如果
面试常被问到
排序
算法总结(插入+选择+交换+归并
排序
)
交换
排序
的基本思想是:所谓交换,就是根据序列中两个记录键值的比较结果来对换这两个记录在序列中的位置, 交换
排序
的特点是:将键值较大的记录向序列的尾部移动,键值较小的记录向序列的前部移动。 冒泡
排序
...
手写一个冒泡
排序
(笔试常见
问题
)
记得小编第一次校招时的笔试,就是让手写一个冒泡
排序
,其实好多笔试都会问到这类
问题
,所以小编今天想来谈一谈
排序
算法中的一个知识点——冒泡
排序
。 什么是冒泡
排序
? ...
C语言
69,382
社区成员
243,073
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章