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(j1)tempendifnextjnexti
如何用listview实现对数值进行排序?
当我们用listview显示数据时,有一种很贴心的设计老祖右击listview某一列,该列则以升序或降序排列。
自己符号表示一个类继承自icomparer接口
classlistviewsort:icomparer
{
privateintcol;
privatebooldesck;
employeelistviewsort()
{
col0;
}
privatelistviewsort(intcolumn,objectdesc)
{
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);
();//对列表参与自定义排序
}
原文标题:vb排序的三种方法代码 vb冒泡法排序原理?,如若转载,请注明出处:https://www.suhaipipe.com/tag/13901.html
免责声明:此资讯系转载自合作媒体或互联网其它网站,「蓝鲸百科」登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述,文章内容仅供参考。