由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Military版 - 问一个sorting numerical array的问题
相关主题
黄人能发明quick sort吗为什么老美这么喜欢说 absolutely
就问问索男们一个问题:quick sort为啥叫“quick”Chinese Men Are Sexy! 猥琐男们,进来打鸡血啦(zz)
Kalmadi: 我们已经把所有问题都解决了公司要解雇你并让培训替代你的人,那该怎么做?
对了, 总书记的QQ会不会也被停了?问个excel的问题
刘跨越就是中国的乔布斯A, A, G, G, L, C, Z, U 面经 + offer (转载)
Rogers: prepare for a big inflation in US. No Obamama老美终于开始抱怨中国邻居了 (转载)
神奇的Outlook 2010排序 (转载)Alicia Machado sextape released (转载)
Sarah Palin: 'Let Allah Sort It Out' In Syria东亚有K-pop,我德有Marilena
相关话题的讨论汇总
话题: saray话题: low话题: data话题: high话题: sort
进入Military版参与讨论
1 (共1页)
s*********o
发帖数: 409
1
如题,本版编程高手很多,用c ,我的code 很stupid 如下:
for(i=0;i {for(j=i+1;j {if(SARAY[j] {temp=SARAY[i];SARAY[i]=SARAY[j];SARAY[j]=temp;
怎么才能提速算法?多谢了!
G***i
发帖数: 150
2
知道numerical 范围的话 如果不是很多 可以用 bucket 或者 radix sort O(n)
complexity
一般的话 comparison sort 直接上quick sort好了 average O(nlogn)
s****b
发帖数: 2039
3
用合并排序?

【在 s*********o 的大作中提到】
: 如题,本版编程高手很多,用c ,我的code 很stupid 如下:
: for(i=0;i: {for(j=i+1;j: {if(SARAY[j]: {temp=SARAY[i];SARAY[i]=SARAY[j];SARAY[j]=temp;
: 怎么才能提速算法?多谢了!

s*********o
发帖数: 409
4
高手能否具体点?我的数字都是在0-1之间,概率,你说的实在听不懂,刚开始自学,
能否给个网页什么帮助的?多谢!

【在 G***i 的大作中提到】
: 知道numerical 范围的话 如果不是很多 可以用 bucket 或者 radix sort O(n)
: complexity
: 一般的话 comparison sort 直接上quick sort好了 average O(nlogn)

s*********o
发帖数: 409
5
范围是0-1之间,dimension是一百万,所以是一个一百万个scalar的vector去sort

【在 G***i 的大作中提到】
: 知道numerical 范围的话 如果不是很多 可以用 bucket 或者 radix sort O(n)
: complexity
: 一般的话 comparison sort 直接上quick sort好了 average O(nlogn)

n**x
发帖数: 854
6
void Quick_sort(int data[],int low,int high)
{
int mid;
if(low {
mid=Partition(data,low,high);
Quick_sort(data,low,mid-1); /* 递归调用 */
Quick_sort(data,mid+1,high);
}
}
G***i
发帖数: 150
7

https://cebulko.com/Programming-Resources/Introduction%20to%20Algorithms%20-
%20CLRS.pdf
到第200页 bucket sort 刚好适用你这种情况
没看到你刚才的回复 一百万太大了 还是用quick sort吧 我给你的pdf 还有前面筒子
回复的都有code

【在 s*********o 的大作中提到】
: 高手能否具体点?我的数字都是在0-1之间,概率,你说的实在听不懂,刚开始自学,
: 能否给个网页什么帮助的?多谢!

s*********o
发帖数: 409
8
我的sorting的是0-1之间的概率,不是整数啊,是不是我没理解你的code的意思,小白
一个不好意思

【在 n**x 的大作中提到】
: void Quick_sort(int data[],int low,int high)
: {
: int mid;
: if(low: {
: mid=Partition(data,low,high);
: Quick_sort(data,low,mid-1); /* 递归调用 */
: Quick_sort(data,mid+1,high);
: }
: }

s*********o
发帖数: 409
9
还有就是需要include 什么library吗?

【在 n**x 的大作中提到】
: void Quick_sort(int data[],int low,int high)
: {
: int mid;
: if(low: {
: mid=Partition(data,low,high);
: Quick_sort(data,low,mid-1); /* 递归调用 */
: Quick_sort(data,mid+1,high);
: }
: }

s*********o
发帖数: 409
10
他那个是sort整数,我需要sort的是0.几的小数,是不是改成float就可以了?

20-

【在 G***i 的大作中提到】
:
: https://cebulko.com/Programming-Resources/Introduction%20to%20Algorithms%20-
: %20CLRS.pdf
: 到第200页 bucket sort 刚好适用你这种情况
: 没看到你刚才的回复 一百万太大了 还是用quick sort吧 我给你的pdf 还有前面筒子
: 回复的都有code

相关主题
Rogers: prepare for a big inflation in US. No Obamama为什么老美这么喜欢说 absolutely
神奇的Outlook 2010排序 (转载)Chinese Men Are Sexy! 猥琐男们,进来打鸡血啦(zz)
Sarah Palin: 'Let Allah Sort It Out' In Syria公司要解雇你并让培训替代你的人,那该怎么做?
进入Military版参与讨论
G***i
发帖数: 150
11
我用c写过一个 从文件中读取 一百万个数字 用quicksort 排序的 你要要的话 私信我
我可以发给你 你改改就可以用

【在 s*********o 的大作中提到】
: 还有就是需要include 什么library吗?
G***i
发帖数: 150
12
他的那个code 缺了最关键的partition part

【在 s*********o 的大作中提到】
: 他那个是sort整数,我需要sort的是0.几的小数,是不是改成float就可以了?
:
: 20-

s******r
发帖数: 2876
13
c不是自带qsort吗?

我用c写过一个 从文件中读取 一百万个数字 用quicksort 排序的 你要要的话 私信我
我可以发给你 你改改就可以用

【在 G***i 的大作中提到】
: 我用c写过一个 从文件中读取 一百万个数字 用quicksort 排序的 你要要的话 私信我
: 我可以发给你 你改改就可以用

n*****t
发帖数: 22014
14
这种最初级的问题,网上随便狗一下大把答案,根本不该发帖问。编程最基本的要求是
学习能力,否则无法跟上知识的快速更新。如果你的职业或者工作内容不是马工,那另
当别论。

【在 s*********o 的大作中提到】
: 如题,本版编程高手很多,用c ,我的code 很stupid 如下:
: for(i=0;i: {for(j=i+1;j: {if(SARAY[j]: {temp=SARAY[i];SARAY[i]=SARAY[j];SARAY[j]=temp;
: 怎么才能提速算法?多谢了!

s*********o
发帖数: 409
15
老姜啊,我的确不是马工,工作内容也不是,我都说了刚开始学,以后不一定会用很多
所以求助,我调侃过你是郊区的,你现在别来报复哈,我真心象懂的人求教

【在 n*****t 的大作中提到】
: 这种最初级的问题,网上随便狗一下大把答案,根本不该发帖问。编程最基本的要求是
: 学习能力,否则无法跟上知识的快速更新。如果你的职业或者工作内容不是马工,那另
: 当别论。

B*Q
发帖数: 25729
16
为啥发军办?
这里都是坏人
n**x
发帖数: 854
17
void Quick_sort(int data[],int low,int high)
{
int mid;
if(low {
mid=Partition(data,low,high);
Quick_sort(data,low,mid-1); /* 递归调用 */
Quick_sort(data,mid+1,high);
}
}
int Partition(int data[],int low,int high)
{
int mid;
data[0]=data[low];
mid=data[low];
while(low < high)
{
while((low < high) && (data[high] >= mid))
{
--high;
}
data[low]=data[high]; /* 从high的位置开始往low的方向找,找到比data[low]小
的元素,存到data[low]中 */

while((low < high) && (data[low] < mid)) /* 新得到的data[low]肯定小于原来
的data[low]即mid */
{
++low;
}
data[high]=data[low]; /* 从low的位置开始往high的方向找,找到比data[high]
大的元素,存在data[high]中 */
}
data[low]=data[0]; /* 把low的新位置存上原来的data[low]的数据 */
return low; /* 递归时,把它做为右侧元素的low */
}

【在 s*********o 的大作中提到】
: 还有就是需要include 什么library吗?
1 (共1页)
进入Military版参与讨论
相关主题
东亚有K-pop,我德有Marilena刘跨越就是中国的乔布斯
法国又撞人了Rogers: prepare for a big inflation in US. No Obamama
老邢的新功能是防射墙神奇的Outlook 2010排序 (转载)
算法就是先分成5组排序Sarah Palin: 'Let Allah Sort It Out' In Syria
黄人能发明quick sort吗为什么老美这么喜欢说 absolutely
就问问索男们一个问题:quick sort为啥叫“quick”Chinese Men Are Sexy! 猥琐男们,进来打鸡血啦(zz)
Kalmadi: 我们已经把所有问题都解决了公司要解雇你并让培训替代你的人,那该怎么做?
对了, 总书记的QQ会不会也被停了?问个excel的问题
相关话题的讨论汇总
话题: saray话题: low话题: data话题: high话题: sort