随笔 - 39  文章 - 0  评论 - 42 

最新评论

共3页: 1 2 3 下一页 
这就是个悖论,N个1~N的自然数,从小到大,结果不是唯一的么?! 要排序,何苦考虑原来的数值? 直接 for(int i=1;i<=Num;++i) { Array[i]=i; }
Re:简单一道排序题,考倒多少读书人 子夜东风 2011-11-22 22:39  
@zdd #include<iostream> using namespace std; void sort(int e[], int n) { int i; int t; /*临时变量:空间复杂度O(1)*/ for (i=0; i<n; i++) /*时间复杂度O(n)*/ { while(e[i] != i + 1) { t = e[e[i] - 1]; /*下标为e的元素,排序后其值就是e*/ e[e[i] - 1] = e[i]; e[i] = t; } } } int main(void) { int a[8] = {5, 4, 6, 7, 8, 3, 2, 1}; sort(a, 8); for(int i = 0; i < 8; i++) { cout << a[i] << " "; } cout << endl; return 0; }
一段漏洞百出的代码,几个盲目追随的sb.
[quote]子夜东风: @zdd 少个下标,自己加上就是[/quote] 好,把你修改的代码贴上来看看吧?我想看看有多么神奇
Re:简单一道排序题,考倒多少读书人 子夜东风 2011-11-14 16:08  
@zdd 少个下标,自己加上就是
静下心来,是能看出while的强大的。
[quote]圣旨到:那个e是数组的首元素的意思吗?为什么编译不过[/quote] 你不会试一下么?光问有个鸟用?
那个e是数组的首元素的意思吗?为什么编译不过
[quote]子夜东风:跟踪了一下排序过程,确实很nb[/quote] 你是咋跟踪的?while(e!=i),一个整型数组和一个int能比较?
这根本就不是O(n)!看清楚了,for里面有个while循环呢!
Re:简单一道排序题,考倒多少读书人 子夜东风 2011-09-20 19:14  
跟踪了一下排序过程,确实很nb
这个题,肯定是闲得蛋疼的人想出来的。
N个大小不等的自然数(1--N) 排完序 难道不是 1 ... n 么 脑筋急转弯啊
没什么高深的,不过是计数排序而已。但是你的题目描述不够严谨,需要满足一定条件才能达到O(n)复杂度。请google "counting sort"
N个大小不等的自然数(1--N),排序结果不就是1,2,3,……,N么 还有,e[e]是什么?
Re:楼梯算法相关 漫长路 2011-09-20 17:14  
@小蠢兔 对的。因为递归要有好多栈的操作,本身就不快。
我已告别可爱的Ubuntu
回归好啊
Re:单多文件上传 不是神 2011-03-09 00:56  
现在看来,挺不错的
Re:计算两条直线的交点--C语言 不是神 2011-03-09 00:53  
哥们顶你,继续努力啊
共3页: 1 2 3 下一页 
宝宝客 www.baobaoke.com