
数据结构
老绿光
这个作者很懒,什么都没留下…
展开
-
(数据结构)以二叉链表作存储结构,设计求二叉树高度的算法。
#include <stdio.h>#include <stdlib.h>#define DATATYPE char#define NULL '\0'typedef struct node{ DATATYPE data; struct node *lchild,*rchild;}BTLINK;BTLINK *creat(){ BTLINK *q; BTLINK *s[30]; int j,i; char x; printf("i,x="); scan原创 2020-10-22 11:36:57 · 5275 阅读 · 0 评论 -
(数据结构)建立链栈,将一组数据入栈,然后再分别出栈并输出。
#include <stdio.h>#define datatype char#define MAXSIZE 100#define NULL '\0'typedef struct{ datatype data[MAXSIZE]; int top;}SEQSTACK;void initstack(SEQSTACK *s){ s->top=-1;//赋值 }void push(SEQSTACK *s,datatype x)//入栈 { if(s->top原创 2020-10-08 11:05:10 · 1647 阅读 · 1 评论 -
(数据结构)冒泡排序,直接插入排序
#include <stdio.h>#include <stdlib.h>#define KEYTYPE int#define MAXSIZE 100typedef struct{ KEYTYPE key;}RECORDNODE;void gaosort(RECORDNODE *r,int n){ int i,j; for(i=n-2;i>=0;i--) { r[n]=r[i]; j=i+1; while(r[n].key>r[j].k原创 2020-11-04 22:49:19 · 244 阅读 · 0 评论 -
(数据结构)实现递归的二分查找算法。
#include <stdio.h>#include <stdlib.h>#define DATATYPE char#define NULL '\0'typedef struct node{ DATATYPE data; struct node *lchild,*rchild;}BTLINK;BTLINK *creat(){ BTLINK *q; BTLINK *s[30]; int j,i; char x; printf("i,x="); scan原创 2020-10-22 12:03:22 · 265 阅读 · 0 评论 -
(数据结构)删除有序的顺序表中的重复元素
#include <stdio.h>#include <stdlib.h>#define DATATYPE int#define MAXSIZE 100typedef struct{ DATATYPE data[MAXSIZE]; int len; }SEQUENLIST;void INITATE(SEQUENLIST *L)//初始化线性表,参数L是表的名字 { L->len=0; }void CREAT(SEQUENLIST *L,int n)原创 2020-12-16 21:24:02 · 3680 阅读 · 0 评论 -
(数据结构)设计一算法,逆置带头结点的单链表head,要求利用原表的结点空间,并要求用尽可能少的时间完成。
/*带头结点的单链表逆置 */#include<stdio.h>#include<stdlib.h>struct node{ int data; struct node* next;};struct node* creat(){ //构造单链表 int i,num; struct node* head; struct node* q; head = (struct node*)malloc(sizeof(struc原创 2020-12-16 21:16:00 · 2997 阅读 · 0 评论 -
(数据结构)实现非递归的二分查找算法
#include <stdio.h>#include <stdlib.h>int binSearch1(int* a, int left, int right, int data){ int mid =0; while (left<=right) { mid = (left + right) / 2; if (data == a[mid]) { return mid; } else if (data > a[mid]) {原创 2020-12-16 20:39:47 · 391 阅读 · 0 评论 -
(数据结构)在顺序表中实现删除操作
#include <stdio.h>#include <stdlib.h>#define DATATYPE int#define MAXSIZE 100typedef struct{ DATATYPE data[MAXSIZE]; int len; }SEQUENLIST;void INITATE(SEQUENLIST *L)//初始化线性表,参数L是表的名字 { L->len=0; }void CREAT(SEQUENLIST *L,int n)原创 2020-12-16 20:17:05 · 1805 阅读 · 1 评论 -
(数据结构)在顺序表中实现插入操作
#include <stdio.h>#include <stdlib.h>#define DATATYPE int#define MAXSIZE 100typedef struct{ DATATYPE data[MAXSIZE]; int len; }SEQUENLIST;void INITATE(SEQUENLIST *L)//初始化线性表,参数L是表的名字 { L->len=0; }void CREAT(SEQUENLIST *L,int n)原创 2020-12-16 20:03:52 · 4906 阅读 · 1 评论