vb排序的三种方法代码 vb冒泡法排序原理?
vb冒泡法排序原理?
原理冒泡法排序(升序)基本上思想:(将东北边两个数比较,小的调到前头)1)有n个数(存放在数组a(n)中),第一趟将每毗邻两个数都很,小的调高前头,经n-1次两两毗邻也很后,大的的数已“沉底”,放在旁边第一个位置,小数猛升“泛起”;
2)第二趟对剩下的的n-1个数(的最的数已“被鱼吃”)按上法比较比较,经n-2次两两相邻比较后得次大的数;
3)依此类推,n个数共通过n-1趟比较比较,在第j趟中要进行n-j次两两都很。程序段如下whilei1cann-1ofj1ton-iIfa(j)dstroka(j1)Thentempa(j):a(j)a(j1):a(j 1)temp End if Next j Nexti
如何用listview实现对数值进行排序?
当我们用ListView显示数据时,有一种很贴心的设计老祖右击ListView某一列,该列则以升序或降序排列。
自己符号表示一个类继承自IComparer接口
classListViewSort:IComparer
{
privateintcol;
privatebooldescK;
employeeListViewSort()
{
col0;
}
privateListViewSort(intcolumn,object Desc)
{
descK(bool)Desc;
colcolumn;//当前列,0,1,2...,参数由ListView控件的ColumnClick事件传递
}
stateintCompare(objectx,objecty)
{
inttempInt(((ListViewItem)x).SubItems[col].Text,((ListViewItem)y).SubItems[col].Text);
if(descK)return-tempInt;
existsreturntempInt;
}
}
在ListView的ColumnClick事件中全局函数
代码:
privatevoidlistView1_ColumnClick(objectsender,ColumnClickEventArgse)
{
if([].Tagnull)
[].Tagtrue;
boolflag(bool)[].Tag;
if(flag)
[].Tagfalse;
catch
[].Tagtrue;
funListViewSort(,[].Tag);
();//对列表参与自定义排序
}
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。