- 博客(31)
- 资源 (5)
- 收藏
- 关注
原创 数据结构_链队列相关操作
#includeusing namespace std;typedef struct Node{int data;struct Node *next;}Node;typedef struct {Node *front;Node *rear;}Queue;void InitQueue(Queue &Q){Node *p
2014-10-08 10:59:35 412
原创 数据结构_单链表的建立与反转
#includeusing namespace std;typedef struct Node{ int data; struct Node* next;}Node,*LinkList;void InitList(LinkList &L){ L = new Node; L->next = NULL;
2014-11-13 14:37:33 387
原创 数据结构_循环队列
#include#includeusing namespace std;const int maxSize = 50;typedef struct { int data[maxSize]; int front; int rear;}Queue;void InitQueue(Queue &Q)//初始化顺序队列
2014-10-07 22:38:23 404
原创 数据结构_顺序栈相关操作
#include#includeusing namespace std;const int maxSize=100;typedef struct { int data[maxSize]; int top;}Stack;void InitStack(Stack &S){ S.top = -1;}
2014-10-06 21:57:36 388
原创 数据结构_栈的相关操作
#includeusing namespace std;#includetypedef int ElemType;typedef struct LNode{ ElemType data; struct LNode *next;}LNode;void InitStack(LNode *&S)//初始化 {
2014-10-06 12:02:10 363
原创 数据结构_单链表
#include#include#includeusing namespace std;typedef struct LNode{ int data; LNode *next;}LNode;void InitList(LNode *&L)//初始化 { L=new LNode; L->data =
2014-10-01 15:20:07 354
原创 数据结构_顺序表
//#include#include#include#includeusing namespace std;const int maxSize=100;typedef struct { int data[maxSize]; int length;}SqList;void InitList(SqList &L);
2014-10-01 14:36:35 379
原创 数据结构_顺序表
#include#include#define maxSize 100typedef struct { int data[maxSize]; int length;}SqList;void InitList(SqList &L){ L.length = 0;}int ListInsert(SqList &L
2014-09-29 23:07:19 431
原创 数据结构_求二叉树的宽度_C语言源代码
typedef struct { BTNode *p; int line;}PL;const int M=50;int BTreeWidth(BTNode *T) { BTNode *s; int LNO; PL Q[M]; int front=0,rear=0; int i,j;
2014-07-20 16:34:24 3172
原创 数据结构_求二叉树中度为0,为1,为2的节点的个数以及所有节点个数
int NumberOfZeroDegree(BTNode *T)//求二叉树中度为1的节点个数 { int i=0; if(NULL != T) { if(NULL==T->lchild && NULL==T->rchild) { i=1;
2014-07-20 15:05:05 15035
原创 数据结构_输出二叉树中先序、中序、后序遍历方式中第k个节点的数据
//输出先序遍历中第k个节点的值int n =0;void Travel(BTNode *T, int k){ if(NULL != T) { if(++n == k) { printf("第%d个节点的数据为:%c\n",k,T->data);
2014-07-20 14:20:10 3321
原创 数据结构_查找二叉树中值为key的节点,并将指针指向该节点_C语言源代码
void PreSearch(BTNode *T, BTNode *&p,char key)//x先序方式查找二叉树中,值为key的节点,并将指针p指向该节点 { if(NULL != T) { if(T->data == key) { p=T; return ;
2014-07-20 13:12:29 2608 1
原创 数据结构_求二叉树的高度以及层次遍历二叉树算法_C语言源代码
int Height(BTNode *T)//求二叉树高度{ int L,R; if(NULL == T) return 0; else { L=Height(T->lchild); R=Height(T->rchild); return L>R ? L+1 :R+1;
2014-07-20 12:41:17 3338 2
原创 数据结构_二叉树的先序建立与先序,中序,后序(递归)遍历方式_C语言源代码
#include#includetypedef struct BTNode{ char data; struct BTNode * lchild; struct BTNode * rchild;}BTNode;void CreateBTree(BTNode *&T){ char ch; s
2014-07-20 12:16:16 1580
原创 数据结构_递归算法的应用_打印n个数的全排列数
#include#includevoid Swap(int &a, int &b) { int t=a; a=b; b=t; }void f(int a[], int k, int n){ int i; if(k==0) { for(i=0;i
2014-07-17 22:28:23 667
原创 数据结构_栈的应用_十进制转化为二进制
#include#includeconst int M=100;int Digital_To_Binary(int N){ int i,result=0; int stack[M],top=-1;//栈的定义与初始化 while(N!=0) { stack[++top]=N%2;
2014-07-16 22:13:47 1669
原创 数据结构_链队列相关操作
#include#includetypedef struct Node{ int data; struct Node *next;}Node;typedef struct{ Node * front; Node * rear;}Queue;void InitQueue(Queue
2014-07-15 22:34:57 401
原创 数据结构_归并排序C语言源代码
#include#includevoid Sort(int a[], int i, int j, int m){ int t; int k; int p; for(k=m+1;k { p=k-1; t=a[k]; while(p>=i&&t>a[p]) {
2014-07-15 22:21:15 689
原创 数据结构_循环队列相关操作_C语言源代码
#include#includeconst int M=100;typedef struct { int data[M]; int front; int rear;}Queue;void InitQueue(Queue &Q){ Q.front = 0; Q.rear
2014-07-14 23:17:08 519
原创 数据结构_链栈的建立与相关操作_C语言源代码
#include#includetypedef struct Stack{ int data; struct Stack *next;}Stack;void InitStack(Stack * &S){ S=(Stack*)malloc(sizeof(Stack)); S->next=NULL;}
2014-07-14 22:35:57 644
原创 数据结构_顺序栈的建立及相关操作_C语言源代码
#include#includeconst int M=100;typedef struct { int data[M]; int top;}Stack;void InitStack(Stack &S){ S.top=-1;}int StackEmpty(Stack S){ r
2014-07-14 22:15:27 1396
原创 数据结构_两条非递减单链表合并成第三条非递减单链表MergeList
void MergeList(LNode *A,LNode *B,LNode *&C){ LNode *p=A->next; LNode *q=B->next; LNode *r=NULL; C=A; r=C; while(p&&q) { if(p->data data) {
2014-07-13 22:12:33 552
原创 数据结构_多项式_C语言源代码
#include#includetypedef struct Node{ int x; int e; struct Node *next; }Node;typedef struct Info{ int x; int e;
2014-07-12 22:43:07 834
原创 数据结构_单链表的插入与删除_C语言源代码
int ListInsert(LNode *&L, int i, int e){ int j=0; LNode *p=L; LNode *s=NULL; while(j { p=p->next; ++j; if(NULL==p) { return 0;
2014-07-11 22:17:22 3920
原创 数据结构_单链表实现选择排序
#include#includetypedef struct LNode{ int data; struct LNode *next;}LNode;void InitList(LNode *&L){ L=(LNode*)malloc(sizeof(LNode)); L->next=NULL;}void Crea
2014-07-10 22:30:39 1689
原创 数据结构_双链表的建立及相关操作
#include#includetypedef struct DLNode{ int data; struct DLNode *prior; struct DLNode *next;}DLNode;void InitDList(DLNode *&L) { L=(DLNode*)malloc(sizeof(DLNode)
2014-07-10 12:01:45 403
原创 数据结构_两个有序链表归并成新的链表(基于头插法建表与尾插法建表)
void MergeListR(LNode *A,LNode *B,LNode* &C)//采用尾插法建表的链表归并 算法 (A,B为递增链表,C要求为单调不减链表){ LNode *r=NULL; LNode *p=A->next; LNode *q=B->next; C=A; C->next=NULL; r=C;
2014-07-09 23:21:14 1185
原创 数据结构_两个有序单链表归并C语言源代码
#include#includetypedef struct LNode{ int data; struct LNode *next;;}LNode; void InitList(LNode *&L){ L=(LNode*)malloc(sizeof(LNode)); L->next=NULL;} vo
2014-07-09 22:59:14 3932 1
原创 数据结构_带有结点的单链表相关操作_C语言源代码
#include#includetypedef struct LNode{ int data; struct LNode *next;;}LNode; void InitList(LNode *&L){ L=(LNode*)malloc(sizeof(LNode)); L->next=NULL;} vo
2014-07-09 22:31:16 529
原创 数据结构_动态数组形式的顺序表相关操作C语言源代码
#include#includetypedef struct { int *data; int length;}Sqlist;void test_Addr(Sqlist L){ printf("addr of L is :%p\n",&L.data); printf("addr of L is :%d\
2014-07-08 23:21:39 474
原创 数据结构_顺序表相关操作C语言源代码
#include#includeconst int MAXSIZE=100;typedef struct { int data[MAXSIZE]; int length; }Sqlist;void InitList(Sqlist &L)//顺序表初始化 { L.le
2014-07-07 22:53:45 465
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人