hashsort
来源:互联网 发布:数据分析师 职称 编辑:程序博客网 时间:2024/05/16 09:43
搞了好几天 终于弄个内存出错不是很厉害的版本....
#include<iostream>
#include<vector>
using namespace std;
class node
{
int data;
node* next;
public:
node(int d=0,node* n=0):data(d),next(n){}
~node(){delete next;}
void set_data(int d){data=d;}
int get_data(){return data;}
void set_next(node* n){next=n;}
node* get_next(){return next;}
void show(){cout<<data<<'';next->show();}
};
void insert(vector<node*>&,int,int);
void hash(vector<node*>&);
void insert(vector<node*>& arr,int dat,int sta)
{
node* tmp=arr.at(sta);
for(;(tmp->get_next()!=arr.at(sta+1))&&(tmp->get_next()->get_data()<dat);tmp=tmp->get_next());
if(tmp->get_next()!=arr.at(sta+1))
{
node* add=new node(dat,tmp->get_next());
tmp->set_next(add);
}
else
{
node* add=new node(dat,arr.at(sta+1));
tmp->set_next(add);
}
}
void hash(vector<node*>& arr)
{
int dat;
int pos;
cout<<"input data:";
while(cin>>dat)
{
node* temp=new node(dat,0);
pos=dat/10;
if(!arr.at(pos))
{
arr.at(pos)=temp;
temp->set_next(arr.at(pos+1));
}
else
insert(arr,dat,pos);
temp=0;
cout<<"input data:";
}
}
int main()
{
vector<node*> array(10,0);
hash(array);
array.at(0)->show();
return 0;
}
- hashsort
- 中科院Java Web开发视频教程笔记——第3讲
- php任意图像裁剪成固定大小[zz]
- phpcms
- PreparedStatement与Statement的区别
- 利用API函数获取系统信息
- hashsort
- 以后要注重培养的兴趣
- C#知识点
- 汇编指令: JO、JNO、JB、JNB、JE、JNE、JBE、JA、JS、JNS、JP、JNP、JL、JNL、JNG、JG、JCXZ、JECXZ、JMP、JMPE
- C# 自动填表 & 关于WebBrowser submit
- js 中的 cookie 操作[zz]
- 传智播客-spring2.5(3)-spring的AOP
- Unity3D 现状分析及简单介绍
- Windows多线程编程实现数据互斥访问的几个方法