![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
坚持的孩子有奶吃
这个作者很懒,什么都没留下…
展开
-
链表的类C实现
链表的类C实现: lklist.h:/* * lklist.h */#ifndef LKLIST_H_#define LKLIST_H_#define OK 1#define ERROR -1typedef int ElemType;typedef struct lknode{ ElemType data; struct lknode *n原创 2009-12-06 16:58:00 · 1063 阅读 · 0 评论 -
顺序表的类C实现
顺序表:sqlist.h: /* * sqlist.h */#ifndef SQLIST_H_#define SQLIST_H_#define OK 1#define ERROR -1#define MAXSZ 50typedef int ElemType;typedef struct{ ElemType elem[MAXSZ];原创 2009-12-06 16:45:00 · 743 阅读 · 0 评论 -
链表实现多项式相加
头文件:polyn.h /* * polyn.h */#ifndef POLYN_H_#define POLYN_H_typedef int ElemType;typedef struct polynnode{ ElemType coef; ElemType expn; struct polynnode *next;} polyn;#de原创 2009-12-08 14:59:00 · 641 阅读 · 0 评论 -
将顺序存储的线性表中所有零元素向表尾集中
(华为招聘试题):试用C或类C语言编写一高效算法,将一顺序存储的线性表(设元素均为整型量)中所有零元素向表尾集中,其他元素则顺序向表头方向集中。 若输入:1 2 3 0 0 5 0 4 7 8则输出:1 2 3 5 4 7 8 0 0 0 void make(int*p,int n){ int i,j; for(i=0,j=0;i<n;i++)转载 2009-12-08 16:32:00 · 1246 阅读 · 0 评论 -
单链表就地逆置的高效算法
单链表(不妨带头节点)就地逆置的高效算法:linklist *ReverseLklist(linklist *L){ linklist *p = L->next; linklist *q = NULL; linklist *h = NULL; while (p != NULL) { q = p->next; p->next = h; h = p;原创 2009-12-08 16:28:00 · 1101 阅读 · 0 评论 -
编写算法,对非递减顺序存储的线性表操作,将表中相等的多余元素删除,变为严格递增
编写算法,对非递减顺序存储的线性表操作,将表中相等的多余元素删除,变为严格递增输入:3 3 4 5 6 6 7 8 9 9输出:3 4 5 6 7 8 9 void SortEx(sqlist *L){ int j = 0; int i = 1; while (i length) { if (L->elem[i] != L-原创 2009-12-08 16:39:00 · 2919 阅读 · 1 评论 -
顺序栈
头文件:sqstack.h/* * sqstack.h */#ifndef SQSTACK_H_#define SQSTACK_H_#define OK 1#define ERROR -1#define MAXSZ 50typedef char ElemType;typedef struct{ ElemType elem[MAXSZ]; i原创 2009-12-10 16:09:00 · 441 阅读 · 0 评论 -
链栈类C实现
头文件lkstack.h:#ifndef LKSTACK_H_#define LKSTACK_H_#define OK 1#define ERROR -1typedef char ElemType;typedef struct stacknode{ ElemType data; struct stacknode *next;} lkstack;#def原创 2009-12-11 14:25:00 · 693 阅读 · 0 评论