随笔 - 39
文章 - 0
评论 - 42
最新评论
Re:简单一道排序题,考倒多少读书人 Zephyroal 2011-11-23 17:19
这就是个悖论,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;
}
Re:简单一道排序题,考倒多少读书人 zdd 2011-11-14 16:45
一段漏洞百出的代码,几个盲目追随的sb.
Re:简单一道排序题,考倒多少读书人 zdd 2011-11-14 16:33
[quote]子夜东风:
@zdd
少个下标,自己加上就是[/quote]
好,把你修改的代码贴上来看看吧?我想看看有多么神奇
Re:简单一道排序题,考倒多少读书人 子夜东风 2011-11-14 16:08
@zdd
少个下标,自己加上就是
Re:简单一道排序题,考倒多少读书人 漫长路 2011-09-30 10:36
静下心来,是能看出while的强大的。
Re:简单一道排序题,考倒多少读书人 perlman 2011-09-21 08:55
[quote]圣旨到:那个e是数组的首元素的意思吗?为什么编译不过[/quote]
你不会试一下么?光问有个鸟用?
Re:简单一道排序题,考倒多少读书人 圣旨到 2011-09-20 22:12
那个e是数组的首元素的意思吗?为什么编译不过
Re:简单一道排序题,考倒多少读书人 zdd 2011-09-20 21:07
[quote]子夜东风:跟踪了一下排序过程,确实很nb[/quote]
你是咋跟踪的?while(e!=i),一个整型数组和一个int能比较?
Re:简单一道排序题,考倒多少读书人 zdd 2011-09-20 21:04
这根本就不是O(n)!看清楚了,for里面有个while循环呢!
Re:简单一道排序题,考倒多少读书人 子夜东风 2011-09-20 19:14
跟踪了一下排序过程,确实很nb
Re:简单一道排序题,考倒多少读书人 ad-hoc 2011-09-20 18:59
这个题,肯定是闲得蛋疼的人想出来的。
Re:简单一道排序题,考倒多少读书人 winter-cn 2011-09-20 18:00
N个大小不等的自然数(1--N) 排完序
难道不是 1 ... n 么 脑筋急转弯啊
Re:简单一道排序题,考倒多少读书人 perlman 2011-09-20 17:44
没什么高深的,不过是计数排序而已。但是你的题目描述不够严谨,需要满足一定条件才能达到O(n)复杂度。请google "counting sort"
Re:简单一道排序题,考倒多少读书人 蒋伟 2011-09-20 17:42
N个大小不等的自然数(1--N),排序结果不就是1,2,3,……,N么
还有,e[e]是什么?
Re:楼梯算法相关 漫长路 2011-09-20 17:14
@小蠢兔
对的。因为递归要有好多栈的操作,本身就不快。
Re:ubuntu右键添加打开终端的快捷菜单 不是神 2011-03-09 00:59
我已告别可爱的Ubuntu
Re:[C 语言]判断某文件是文件夹还是文件 不是神 2011-03-09 00:58
回归好啊
Re:单多文件上传 不是神 2011-03-09 00:56
现在看来,挺不错的
Re:计算两条直线的交点--C语言 不是神 2011-03-09 00:53
哥们顶你,继续努力啊
