#include <list>#include <iterator>#include <iostream>using namespace std;struct Obj{int x;int y;int val;void show(){cout<<" x:"<<x<<",y:"<<y<<",val:"<<val;}};list<Obj> insert_sort(list<Obj> ils){list<Obj> olis;list<Obj>::iterator it=ils.begin();while(it!=ils.end()){if (olis.empty()){olis.push_back(*it);}else{list<Obj>::iterator tempIt = olis.begin();while(tempIt!=olis.end()){if (it->val<tempIt->val){tempIt++;}else{break;}}olis.insert(tempIt,1,(*it));}it++;}return olis;}#define MAX_N 100;void main(){srand(12345);list<Obj> ils ;int a[]={1,0,3,2,4,5,7,8,9,6};for( int i=0;i<sizeof(a)/ sizeof(int) ;++i){Obj oj;oj.val = a[i];oj.x = rand()%MAX_N;oj.y = rand()%MAX_N;ils.push_back(oj);}list<Obj>::iterator it = ils.begin();while(it!=ils.end()){it->show();it ++;}cout<<endl;//list<Obj> olis = insert_sort(ils);it = olis.begin();while(it!=olis.end()){it->show();it ++;}cout<<endl;system("pause");}
排序
最新推荐文章于 2024-11-28 13:35:01 发布