首页 > 教育培训

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(j1)tempendifnextjnexti

vb排序的三种方法代码 vb冒泡法排序原理?

如何用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);

();//对列表参与自定义排序

}

columnclick排序listview

原文标题:vb排序的三种方法代码 vb冒泡法排序原理?,如若转载,请注明出处:https://www.suhaipipe.com/tag/13901.html
免责声明:此资讯系转载自合作媒体或互联网其它网站,「蓝鲸百科」登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述,文章内容仅供参考。