随笔分类 - 数据结构和算法
摘要:单链表反转:这个是反转是要破坏原有数据结构的。算法1:红色线为将要修改节点的指向,这里只要关注几个节点:Head->next,Cur,Cur->next,Cur->next->next,遍历整个链表调整即可。 #include using namespace std;typedef struct _...
阅读全文
摘要:#include #include #define N 500typedef struct node{ int data[N]; int front; int rear;}Queue;void initQueue(Queue*& q) //初始队列{ q= (Queue*)malloc(sizeof...
阅读全文
摘要:#include #include typedef struct Node //一个项节点{ int modulus; //系数 int cover; //幂 struct Node* next; }List;void creatList(List *&l) //创建多项式链表...
阅读全文
摘要:#include #include #include #include #define N 52 int hcard[4][14]; //四个玩家的牌void initCard(int* card) //初始化一副顺序牌{ int i = 0; for(;i=0&&temp>ccard[j])...
阅读全文
摘要:#include #include #define MAXSIZE 100typedef struct Node{ int data; Node* lchild; Node* rchild;}Tnode;void creatTree(Tnode*& root) //创建树{ int n; prin...
阅读全文
摘要:/*C++实现插入排序*/#include using namespace std;void insertsort(int a[],int length){ int j=1; for(;j=0&&a[i]>key) { a[i+1]=a[i]; i--; } a[i+1]=key; }...
阅读全文
摘要:/*C++实现快速排序*/#includeusing namespace std;int partition(int a[],int p,int r){ int x=a[r]; int i=p-1; int j=p; for(;ja[b]) { return findin(a,length-b-1...
阅读全文
摘要:#include #include #define SIZE 100#define INCREMENT 10typedef struct{ int* base; int* top; int stacksize;}SqStack;int initStack(SqStack& S){ S.base=(i...
阅读全文
摘要:关键是将运算表达式转换成后缀表达式很难理解,12+12的后缀表达式为:12#12#+;而(12.312-2.5)*4的后缀表达式为:12.312#2.5#-4#*,理解了这里就容易了! #include #define MAX 100float strToFloat(char* string){ f...
阅读全文

浙公网安备 33010602011771号