
数据结构
文章平均质量分 73
jimolangge123
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
数据结构排序之使用JAVA范型完成2路排序
package ch10;/** * 2-路插入排序 * @author songjie * */public class TwoWayInsertSort { /** * * @param * @param t:原始数组 * @param s:待返回的排好序的数组 * @return * @throws IllegalArgumentException转载 2014-03-27 20:34:37 · 457 阅读 · 0 评论 -
二叉树的后序遍历实现(基于两个栈实现)
对于二叉链表的非递归遍历当属后序最难,我们仔细分析原创 2014-08-14 15:59:37 · 3254 阅读 · 0 评论 -
二叉树的遍历(前序+中序+后序)
#include#include#define OK 1#define ERROR 0 #define OVERFLOW -2 #define STACK_INIT_SIZE 100 //栈初始化分配量#define STACKINCREMENT 10 //存储空间的分配增量#define MAXQSIZE 20;typedef int Status ;//---原创 2015-05-29 21:08:15 · 475 阅读 · 0 评论 -
Java实现二叉树的遍历(多种方式实现前中后序的遍历)
二叉树的Node节点:public class Node { private char key ; private Node left ; private Node right ; public Node() { } public Node(char key){ this(key,null,null); } public Node(char key,Node原创 2015-05-29 21:31:16 · 527 阅读 · 0 评论 -
Java实现二叉排序(查找)树的操作
二叉排序树定义:1.左子树值小于根2.根的值小于右子树3.其左右子树又是一颗二叉排序树抽象数据类型定义,在Java中即是接口的定义/* * 二叉排序树是二叉树的扩展 * 对于二叉树一般不涉及到插入和删除树中的元素,而在二叉查找树中有 * * */public interface BinarySearchTreeADT extends BinaryTreeADT{原创 2015-05-31 15:22:57 · 696 阅读 · 0 评论 -
图的链式存储结构的建立
#include#include#define MAX_VER_NUM 20/*图的链式存储结构*//*1.表结点的结构 2*e个*/typedef struct ArcNode{ int adjvex ; //该弧所指向的顶点的位置 struct ArcNode *next ; int *info ;}ArcNode;/*2.头结点结构*/typedef struct原创 2014-08-29 09:21:49 · 1042 阅读 · 0 评论 -
插入排序之2路插入排序
#include#include#define MAXSIZE 20#define SIZE 100typedef int KeyType ;typedef char InfoType ;typedef struct { KeyType key ; InfoType otherInfo ;}RedType;//记录的类型typedef struct{ RedType原创 2014-08-22 09:36:52 · 669 阅读 · 0 评论 -
二叉树的顺序存储结构
#ifndef TREE_H#define MAX_TREE_SIZE 20 /* 二叉树的最大结点数 */#define OK 1#define ERROR -1typedef int Status ;typedef char TElemType ;typedef TElemType SqBiTree[MAX_TREE_SIZE]; /* 0号单元存储根结点 */ typed原创 2014-09-02 21:23:03 · 3718 阅读 · 0 评论 -
栈的链式存储结构的实现
#ifndef LINK_STACK_H#define LINK_STACK_H#define OK 1#define ERROR 0 #define OVERFLOW -2 #define STACK_INIT_SIZE 100 //栈初始化分配量#define STACKINCREMENT 10 //存储空间的分配增量typedef int SElemType ; t原创 2014-09-07 10:51:16 · 663 阅读 · 0 评论 -
数据结构栈的数组实现初始化,入栈,出栈,获取栈顶元素,栈的长度等操作
#ifndef _STACK_H#define _STACK_H#define OK 1#define ERROR 0 #define OVERFLOW -2 #define STACK_INIT_SIZE 100 //栈初始化分配量#define STACKINCREMENT 10 //存储空间的分配增量typedef int SElemType ;typedef in原创 2014-08-05 15:39:02 · 3168 阅读 · 0 评论 -
数据结构排序之直接选择排序
直接选择排序的思想:假设第原创 2014-08-22 10:19:52 · 586 阅读 · 0 评论 -
数据结构排序之直接插入排序
直接插入排序:是一种最简单的排序方法。直接插入排序基本原理:它的基本操作就是将一个记录插入到已排好序的有序表中,从而得到一个新的、记录数增1的有序表。也就是说,直接插入排序将待排序序列分成两部分,一部分是有序序列,一部分是无序的。将无序序列的数添加到有序序列中,待无序序列长度为0是,直接插入排序结束。在直接插入排序过程中一共进行n-1趟插入,即:先将序列表中的第一个记录看成是有序的子序列,原创 2014-03-26 20:09:22 · 922 阅读 · 0 评论 -
数据结构队列的链表实现初始化,出队,出队以及显示
#ifndef _Queue_H#define OK 1 #define ERROR 0#define OVERFLOW -2 typedef int QElemType;typedef int Status;typedef struct QNode{ QElemType data ; struct QNode *next ;}QNode , *QueuePtr;typ原创 2014-08-07 21:24:06 · 801 阅读 · 0 评论 -
数据结构线性表的动态顺序实现增删改查
#include#include#define TRUE 1 #define FALSE 0#define OK 1 #define ERROR 0 #define OVERFLOW -2#define LIST_INIT_SIZE 100 #define LISTINCREMENT 10typedef int Status ;typedef int ElementType ;原创 2014-07-03 19:35:00 · 706 阅读 · 0 评论 -
数据结构之链表实现增删改查
#include #include #define TRUE 1 #define FALSE 0#define OK 1 #define ERROR 0 #define OVERFLOW -2#define LIST_INIT_SIZE 100 #define LISTINCREMENT 10typedef int Status ;typedef int ElementTyp原创 2014-08-04 14:56:34 · 1036 阅读 · 0 评论 -
数据结构排序之冒泡排序
冒泡排序原理:首先将第一个记录的关键字和第二个记录的关键字进行比较,若为逆序,则将两个记录交换,然后比较第二个记录和第三个记录的关键字。依次类推,直到第n-1个记录和第n个记录分关键字进行过比较。这属于第一趟冒泡排序。然后按照上面的顺序在进行前n-1,n-2,... 1个数的冒泡排序。冒泡排序之所以被称作是冒泡排序是因为:关键字较小的记录好比水中的气泡逐趟向上漂浮,而关键字较大的记录好比石原创 2014-03-25 09:46:27 · 623 阅读 · 0 评论 -
数据结构排序之快速排序
快速排序:在实践中最快的已知排序算法,它的平均运行时间是O(nlogn) 。该算法之所以快是因为非常精炼和高度优化的内部循环,它是冒泡排序的一种改进。它最坏的情况会退化成冒泡排序,时间复杂度是O(n*n)。但是稍加努力就会避免这种情况的发生,一会给出详细的解决办法。 快速排序思想:首先第一步选出一个支点(枢轴),通过一趟快速排序将待排序记录按照支点分割成两个独立的部分,其中一部分记录的原创 2014-03-26 17:22:12 · 675 阅读 · 0 评论