vb排序的三種方法代碼 vb冒泡法排序原理?
vb冒泡法排序原理?原理冒泡法排序(升序)基本上思想:(將東北邊兩個(gè)數(shù)比較,小的調(diào)到前頭)1)有n個(gè)數(shù)(存放在數(shù)組a(n)中),第一趟將每毗鄰兩個(gè)數(shù)都很,小的調(diào)高前頭,經(jīng)n-1次兩兩毗鄰也很后,大的的
vb冒泡法排序原理?
原理冒泡法排序(升序)基本上思想:(將東北邊兩個(gè)數(shù)比較,小的調(diào)到前頭)1)有n個(gè)數(shù)(存放在數(shù)組a(n)中),第一趟將每毗鄰兩個(gè)數(shù)都很,小的調(diào)高前頭,經(jīng)n-1次兩兩毗鄰也很后,大的的數(shù)已“沉底”,放在旁邊第一個(gè)位置,小數(shù)猛升“泛起”;
2)第二趟對(duì)剩下的的n-1個(gè)數(shù)(的最的數(shù)已“被魚(yú)吃”)按上法比較比較,經(jīng)n-2次兩兩相鄰比較后得次大的數(shù);
3)依此類推,n個(gè)數(shù)共通過(guò)n-1趟比較比較,在第j趟中要進(jìn)行n-j次兩兩都很。程序段如下whilei1cann-1ofj1ton-iIfa(j)dstroka(j1)Thentempa(j):a(j)a(j1):a(j 1)temp End if Next j Nexti
如何用listview實(shí)現(xiàn)對(duì)數(shù)值進(jìn)行排序?
當(dāng)我們用ListView顯示數(shù)據(jù)時(shí),有一種很貼心的設(shè)計(jì)老祖右擊ListView某一列,該列則以升序或降序排列。
自己符號(hào)表示一個(gè)類繼承自IComparer接口
classListViewSort:IComparer
{
privateintcol;
privatebooldescK;
employeeListViewSort()
{
col0;
}
privateListViewSort(intcolumn,object Desc)
{
descK(bool)Desc;
colcolumn;//當(dāng)前列,0,1,2...,參數(shù)由ListView控件的ColumnClick事件傳遞
}
stateintCompare(objectx,objecty)
{
inttempInt(((ListViewItem)x).SubItems[col].Text,((ListViewItem)y).SubItems[col].Text);
if(descK)return-tempInt;
existsreturntempInt;
}
}
在ListView的ColumnClick事件中全局函數(shù)
代碼:
privatevoidlistView1_ColumnClick(objectsender,ColumnClickEventArgse)
{
if([].Tagnull)
[].Tagtrue;
boolflag(bool)[].Tag;
if(flag)
[].Tagfalse;
catch
[].Tagtrue;
funListViewSort(,[].Tag);
();//對(duì)列表參與自定義排序
}