数据结构与算法
Daniel_lmz
这个作者很懒,什么都没留下…
展开
-
数据结构: C语言实现冒泡排序算法
C语言实现冒泡排序算法:#include<stdio.h>#include<stdlib.h>void swap(int* number, int i, int j);int main(){ int number[100]; int quantity; int m = 0; int n = 0; int i = 0, j ...原创 2018-06-04 20:23:18 · 7062 阅读 · 0 评论 -
数据结构: 简单选择排序
简单选择排序的思路:第一步: 数组中的第一个数与其它的数进行比较,记下最大或最小的数的下标,如果第一个数不是最大值或最小值就交换第一个数和找出的最大数或最小数;第二步: 数组中的第二个数与其它的数进行比较(除了第一个数),接下来的步骤与上同;以此类推.......直到数组的倒数第二个数。完毕!#include<stdio.h>#include<stdlib.h>voi...原创 2018-06-06 20:00:47 · 210 阅读 · 0 评论 -
数据结构: 递归先序创建二叉树及其先序,中序和后序遍历
递归先序创建二叉树及其先序,中序和后序遍历:(C语言实现如下)#include<stdio.h>#include<stdlib.h>//前序创建二叉树//先 中 后 遍历二叉树//层序遍历(队列)//计算二叉树的深度#define OK 1#define ERROR 0#define MAXSIZE 100typedef char BTElementyp...原创 2018-05-31 20:59:28 · 1521 阅读 · 0 评论 -
数据结构: 非递归先序创建二叉树及其先序,中序和后序遍历
非递归先序创建二叉树及其先序,中序和后序遍历:#include<stdio.h>#include <stdlib.h>#include <string.h>#define MAXSIZE 100typedef struct BTNode{ char data; struct BTNode *lchild, *rchild;} BT...原创 2018-05-31 20:51:55 · 712 阅读 · 0 评论 -
数据结构: 折半查找和插值查找
1.折半查找2.插叙查找就是把1中的mid = (low+high)/2改为mid = low + (key - a[low])*(high - low)/(a[high] - a[low]);具体代码如下:#include<stdio.h>int Bisearch(int *a,int n, int key);int main(){ int a[100]; i...原创 2018-05-29 23:25:32 · 276 阅读 · 0 评论 -
数据结构: 顺序查找
有哨兵顺序查找意思就是将数组a[0]存下要查找的数,从数组的尾巴开始查找,若顺序查找函数返回的是非0值就代表查找成功,否则查找失败。#include<stdio.h>int Sequence_search(int *a,int n, int key);int main(){ int a[10]; int i = 1; int key = 0; i...原创 2018-05-29 23:15:21 · 4920 阅读 · 0 评论 -
数据结构:《栈》
《栈》目录:1.栈的定义2.栈的抽象数据类型3.顺序栈4.链栈 1.栈的定义• 栈(Stack)是限定仅在表尾进行插入和删除的线性表。• 我们把允许插入和删除的一端称为栈顶(top),另一端称为栈底(bottom)。• 不含任何数据元素的栈称为空栈。• 栈为后进先出(Last In First Out)的线性表,简称LIFO结构。(如图1所示) 图1• 栈的插入操作,叫做压入...原创 2018-05-17 19:41:34 · 252 阅读 · 0 评论