大家好,今天來為大家分享sort函數(shù)對數(shù)組排序的一些知識點,和利用sort函數(shù)對兩個數(shù)組排序的問題解析,大家要是都明白,那么可以忽略,如果不太清楚的話可以看看本篇文章,相信很大概率可以解決您的問題,接下來我們就一起來看看吧!
vba怎么將數(shù)組按照大小排序
vba里沒有現(xiàn)成的sort方法可以使用,vba里面要對數(shù)組進行排序,現(xiàn)有的通常做法:
1.通過單元格賦值以后,利用工作表里的Sort方法進行排序
2.通過SQL實現(xiàn),也需要調用單元格區(qū)域存放數(shù)據(jù)
3.直接寫循環(huán)語句通過算法來實現(xiàn)。
c語言數(shù)組排序講解
C語言將數(shù)組元素大小排序方法:以下使用的是冒泡排序法實線數(shù)組從小到大排序。思想:每次相鄰兩個數(shù)比較,若升序,則將大的數(shù)放到后面,一次循環(huán)過后,就會將最大的數(shù)放在最后。
10、2、3、4、5、6、9、8、7、1是輸入的待排序的數(shù)列,經(jīng)過第一次排序,將最大的,10放在最后,第二次排序,將剩下的2、3、4、5、6、9、8、7、1進行冒泡,將當前最大的9放在倒數(shù)第二的位置,以此類推。以下是具體代碼:
#include
Delphi中,有沒有對數(shù)組進行排序的函數(shù)
就是放入Tstringlist內
同sort方法排序
然后再輸出到數(shù)組
至于再返回來,沒什么好辦法,還是保留原來沒排序之前的Stringlist吧
var
arr1:array[0..9]ofinteger;
s1:Tstringlist;
i:integer;
begin
arr1[0]:=6;
arr1[1]:=5;
arr1[2]:=4;
arr1[3]:=3;
arr1[4]:=2;
arr1[5]:=1;
arr1[6]:=0;
arr1[7]:=9;
arr1[8]:=7;
arr1[9]:=8;
s1:=Tstringlist.Create;
s2:=Tstringlist.Create;
fori:=0tolength(arr1)-1do
begin
s1.Add(inttostr(arr1[i]))
end;
s2.Text:=s1.Text;
s1.Sort;
fori:=0tos1.Count-1do
begin
arr1[i]:=strtoint(s1.Strings[i]);
end;
showmessage(inttostr(arr1[0]));
showmessage(inttostr(arr1[1]));
showmessage(inttostr(arr1[2]));
end;
其中s2就保存未排序之前的數(shù)據(jù)s2聲明為全局變量
Java數(shù)組排序幾種排序方法詳細一點
這是平時經(jīng)常用到的排序方法整理,簡單易懂
快速排序:首先是最簡單的Array.sort,直接進行排序:
publicstaticvoidmain(String[]args){
int[]arr={4,3,5,1,7,9,3};
Arrays.sort(arr);
for(inti:arr){
System.out.println(i);
}
點擊運行即可輸出已排序的數(shù)組數(shù)字。
2、部分排序法:使用Array.sort還可進行選擇想要排序的部分數(shù)字,如將下角標編號為1~4的數(shù)字進行排序,其他數(shù)字順序不變。
publicstaticvoidmain(String[]args){
int[]arr={4,3,5,1,2,9,3,0};
Arrays.sort(arr,1,4);
for(inti=0;i<arr.length;i++){
System.out.print(arr[i]+",");
}
}
輸出結果為:4,1,3,5,2,9,3,0,???可見僅下標為1~4的數(shù)字進行了排序。
3、冒泡排序法:顧名思義,從下到上,兩兩進行比較,越小的越往上,從而形成由小到大的排序。
publicstaticvoidbubble(int[]arr){
inttemp;
//根據(jù)角標進行比較,
for(inti=0;i<arr.length;i++){
//j是數(shù)組的最后一個角標
for(intj=arr.length-1;j>i;j--){
if(arr[j]<arr[j-1]){
//從后往前進行比較,小數(shù)往前,一輪之后最小數(shù)就在最前面了
temp=arr[j-1];
arr[j-1]=arr[j];
arr[j]=temp;
}
}
}
}
publicstaticvoidmain(String[]args){
int[]arr={3,22,5,3,66,2,9};
bubble(arr);
//使用foreach循環(huán)輸出
for(intx:arr){
System.out.println(x);
}
//使用字符串表達形式輸出,輸出形式更為直觀
System.out.println(Arrays.toString(arr));
}
C語言數(shù)組排序方法
C語言將數(shù)組元素大小排序方法:以下使用的是冒泡排序法實線數(shù)組從小到大排序。思想:每次相鄰兩個數(shù)比較,若升序,則將大的數(shù)放到后面,一次循環(huán)過后,就會將最大的數(shù)放在最后。
10、2、3、4、5、6、9、8、7、1是輸入的待排序的數(shù)列,經(jīng)過第一次排序,將最大的,10放在最后,第二次排序,將剩下的2、3、4、5、6、9、8、7、1進行冒泡,將當前最大的9放在倒數(shù)第二的位置,以此類推。以下是具體代碼:
#include
sort函數(shù)可以排列字符數(shù)組名
boolcompare(char*p1,char*p2){if(strcmp(p1,p2)<0)returntrue;elsereturnfalse;}intmain(){chararr[3][10]={"abc","cdb","bcd"};char*arr1[3]
;for(inti=0;i<3;i++)arr1[i]=arr[i];sort(&arr1[0],&arr1[0]+3,compare)
;for(inti=0;i<3;i++)printf("%s\n",arr1[i]);return0;}
END,本文到此結束,如果可以幫助到大家,還望關注本站哦!