社区
C++ 语言
帖子详情
这个排序叫什么算法?
xjyr
2006-02-22 12:54:22
void sort(int *a, int n)
{
int i,j;
for(i=0; i<n-1; i++)
{
for(j=i+1; j<n; j++)
if( a[i] < a[j])
{
t = a[i];
a[i] = a[j];
a[j] = t;
}
}
}
我以前毫不犹豫的告诉学生,这叫冒泡排序,现在才知道根本不是,请问,那这叫什么排序啊?
好惭愧啊!
...全文
280
16
打赏
收藏
这个排序叫什么算法?
void sort(int *a, int n) { int i,j; for(i=0; i<n-1; i++) { for(j=i+1; j<n; j++) if( a[i] < a[j]) { t = a[i]; a[i] = a[j]; a[j] = t; } } } 我以前毫不犹豫的告诉学生,这叫冒泡排序,现在才知道根本不是,请问,那这叫什么排序啊? 好惭愧啊!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
16 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
chenzhichao2008
2006-02-23
打赏
举报
回复
不伦不类的选择排序
mailpq
2006-02-23
打赏
举报
回复
如果完全按照书上的定义来说,这个也非选择排序!
(选择排序是每趟选出最大的分别与第一,第二个位置……交换,其他位置不动)
因此选者排序的算法应该是:
void sort(int *a,int n)
{
int i,j,k;
int temp;
for(i=0;i<n-1;i++)
{
k=i;
for(j=i+1;j<n;j++)
if(a[k]<a[j])k=j;//k用来记录每趟的最大值下标;
if(i!=k)
{
temp=a[i];
a[i]=a[k];
a[k]=temp;
}
}
}
照这么说,你那个应该是个效率不很高的选择排序,
一人之见,望大家指教,呵呵
seabright2002
2006-02-23
打赏
举报
回复
应该是选择排序
lisypro
2006-02-23
打赏
举报
回复
直接插入排序
lonelyforest
2006-02-23
打赏
举报
回复
还是看看 谭老师的<<c程序设计》或许帮助比较大;
fccfcc1234
2006-02-23
打赏
举报
回复
果然是奇怪的排序方法.不过效率应该比选择低.
还是想想给个恰当的名字吧....选择冒泡法.
province_
2006-02-23
打赏
举报
回复
是选择排序,排好后大头在前。
sankt
2006-02-23
打赏
举报
回复
每次从无序表中取出一个元素,插入到有序表的适当位置,称作插入排序.
每次从无序表中选出一个最大或最小元素,把它交换到有序表的一端,称作选择排序.
//====
所以楼主这个排序不是正宗的选择排序
cad_vc
2006-02-23
打赏
举报
回复
不是冒泡,也不是选择。
恭喜你,你找到一个新的排序方法。
missedyou_1984
2006-02-23
打赏
举报
回复
太明显了
是冒泡排序
排序分好几种 其中快速排序法最好了
cavinzhang
2006-02-23
打赏
举报
回复
算是选择排序吧
bm1408
2006-02-22
打赏
举报
回复
select sort
SammyLan
2006-02-22
打赏
举报
回复
直接插入排序
AmyLin_2001
2006-02-22
打赏
举报
回复
void sort(int *a, int n)
{
int i,j;
int flag;
for(i=0; i<n-1; i++)
{
for(j=i+1; j<n; j++)
if( a[i] < a[j])
{
t = a[i];
a[i] = a[j];
a[j] = t;
}
}
}
选择排序,每次把最大的放第一个
xiaocai0001
2006-02-22
打赏
举报
回复
选择排序!
冒泡排序如下:
void sort(int *a, int n)
{
int i,j;
for(i=0; i<n-1; i++)
{
for(j=i+1; j<n; j++)
if( a[j-1] < a[j])
{
t = a[j-1];
a[j-1] = a[j];
a[j] = t;
}
}
}
冒泡排序是相邻比较,选择排序是与每一趟与指定的位置比较。
liqiuhua123
2006-02-22
打赏
举报
回复
选择排序,每回都选一个最小的,第二小的,....最大的
MoreWindows白话经典
算法
之七大
排序
(高清版)
这是本人在研一上课时所整理的文档,包括冒泡
排序
,直接插入
排序
,直接选择
排序
,希尔
排序
,归并
排序
,快速
排序
和堆
排序
这七种常用的
排序
方法,这些文章不仅使我在考试中取了不错的成绩,也为后来顺利面过迅雷,腾讯...
MoreWindows白话经典
算法
之七大
排序
第2版(高清)
在第一版的基础上新加了对冒泡
排序
,直接插入
排序
,直接选择
排序
,希尔
排序
,归并
排序
,快速
排序
和堆
排序
这七种常用的
排序
方法的总结篇,方便大家复习,合适作为笔试面试前的复习资料。
面试之
排序
算法
排序
算法
是我们面试被问到最多的基础
算法
,本课程详细介绍了七种
排序
算法
,包括插入
排序
、选择
排序
、冒泡
排序
、谢尔
排序
、快速
排序
、堆积
排序
和二路并归
排序
。每种
算法
都详细介绍了核心思想、详细步骤、时间复杂度和...
完整视频-coursera公开课 普林斯顿
算法
ⅠⅡ部分
视频一个两部分,
算法
(一)主要集中在基础的数据结构、
排序
、查找
算法
。 相关主题有:并查集
算法
,二分查找,栈,队列,背包,插入
排序
,选择
排序
,希尔
排序
,快速
排序
, 三切分快排,归并
排序
,堆
排序
,二分堆,二...
为什么说快速
排序
是性能最好的
排序
算法
?
心想从表上来看,堆
排序
不该是最好的
排序
算法
么?不管最好、最坏还是平均情况,时间复杂度都是O(nlogn),而且还不像快排和归并
排序
那样占空间,为什么说快速
排序
是最好的
算法
呢? 其实经过实验,会发现相同的数据...
C++ 语言
64,648
社区成员
250,476
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章