
数据结构和算法
文章平均质量分 66
romancegirls
这个作者很懒,什么都没留下…
展开
-
经典排序算法
数值算法:解方程、微积分、数值分析 多用在工程设计非数值算法:搜索、排序、拆分、合并 多用在系统 一、线性搜索1.算法1.1从头开始,依次将每一个元素与查找目标进行比较1.2或者找到目标,或者找不到目标2.评估2.1平均时间复杂度:O(N),线性时间2.2对数据没有任何规律性要求 穷举法 二、二分搜索(折半搜索)1.算法1.1假设表中原创 2014-05-05 11:32:14 · 717 阅读 · 0 评论 -
双向线性链表的实现
头文件“ls.h”函数具体实现过程"la"原创 2014-04-24 16:52:41 · 668 阅读 · 0 评论 -
有序二叉树的实现
头文件“bt.h”/* 有序二叉树 */#ifndef _BT_H#define _BT_H#include /* 节点 */typedef struct BsTreeNode { int data; /* 数据 */ struct BsTreeNode* left; /* 左子树 */ struct BsTreeNode* right; /* 右原创 2014-04-24 17:36:41 · 1476 阅读 · 0 评论 -
单向线性链表的实现
/* * 练习:实现单向线性链表 * list_append() - 追加 * list_size() - 测长 * list_print() - 正向打印 * list_rprint() - 反向打印 * list_reverse() - 逆转 * list_middle() - 中间值 * list_merge() - 将两个有序链表合并为一个有序链表 *原创 2014-04-24 17:20:48 · 998 阅读 · 1 评论 -
链表
1.地址不连续的节点序列,彼此通过指针相互连接。2.根据不同的结构特作,将链表分为: 1)单向线性链表 2)单向循环链表 3)双向线性链表 4)双向循环链表 5)数组链表 顺序表和链表结合,每个链表指针指向一个数组 6)链表数组 指针数组,每个指针指向一个链表 7)二维链表 由链表组成的链表,每个链表指针又指向链表原创 2014-04-20 22:02:17 · 516 阅读 · 0 评论 -
老鼠走迷宫
/* 老鼠走迷宫 */#include #include #include #include #include #include #include "sl.h"(见基于链表的堆栈实现)/* 空间字符 */#define SPACE_MOUSE '*' /* 老鼠 */#define SPACE_WAY ' ' /* 通路 */#define SPACE_WALL原创 2014-04-22 13:39:38 · 1236 阅读 · 0 评论 -
基于链表的堆栈实现
定义函数接口头文件“sl.h”/* 基于链表的堆栈 */#ifndef _SL_H#define _SL_H#include /* 节点 */typedef struct StackNode { int data; /* 数据 */ struct StackNode* next; /* 后指针 */} STACK_NODE;/* 堆原创 2014-04-22 13:05:47 · 781 阅读 · 0 评论 -
基于数组的堆栈实现
定义函数接口头文件“sa.h”函数功能实现“sa.c”测试用例“”原创 2014-04-22 13:00:59 · 520 阅读 · 0 评论 -
二叉树
1.树型结构的最简模型,每个节点最多有两个字节点2.每棵树只有一个父节点,最多只有两个子节点3.具有递归的结构特征,用递归的方法处理二叉树问题,往往可以使算法得到简化。4.三种遍历序列 前序遍历 -D-L-R 中序遍历 -L-D-R 后序遍历 -L-R-D5.形式术语:根节点 枝节点 叶节点 父节点 子节点原创 2014-04-20 22:03:57 · 452 阅读 · 0 评论 -
用堆栈实现队列
头文件“qs.h”函数实现“qs.c”测试用例“qs”原创 2014-04-21 13:31:46 · 615 阅读 · 0 评论 -
基于数组的队列实现
/* 基于数组的队列 */#ifndef _QA_H#define _QA_H#include /* 队列 */typedef struct Queue { int* arr; /* 数组 */ size_t cap; /* 容量 */ size_t front; /* 前端(弹出) */ size_t rear; /* 后端(压入) */ size_t size原创 2014-04-21 12:03:40 · 511 阅读 · 0 评论 -
基于链表的队列实现
首先建立头文件“qa.h”函数实现部分“qa.c”测试用例“qa_test.c”原创 2014-04-21 13:15:23 · 536 阅读 · 0 评论 -
数据结构基础知识
一 数据结构基本概念 程序设计=数据结构+算法 1.数据结构是相互之间存在一种或多种特定关系的数据的集合。 逻辑 2.数据结构是计算机存储组织数据的方式。 物理形式 3.数据结构的选择直接影响及三级程序的运行效果(时间复杂度)和存储效率(空间复杂度)。 4.数据结构包括三个基本层次: 抽象层-逻辑结构 结构层-物理结构原创 2014-04-19 23:07:46 · 613 阅读 · 0 评论