![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
ddhsea
这个作者很懒,什么都没留下…
展开
-
关于单链表的基本操做
#include#include#includetypedef int ElementType;typedef struct node{ ElementType data; struct node *next;}LNode,*LinkList;/* 头插法对单链表的创建*/LinkList Create_LinkList1(){LNod原创 2017-12-10 11:43:20 · 173 阅读 · 0 评论 -
哈夫曼树的基本总结
路径:从一个节点到达另一个节点的分支序列路径长度:路径上分支的条数称为路径长度数据路径长度:从树根到每个节点的路径长度之和节点的权:给树中节点赋予一个数值,该数值叫做节点的权带权路径长度:节点到树根之间的路径长度与节点的权的乘积树的带权路径长度(WPL):树中所有叶子节点的带权路径之和最优二叉树(又称哈夫曼树):在叶子节点数n以及各叶子节点的权值Wk确定的前提下,树的带权路径长度WPL值最小的二叉...原创 2018-05-01 19:48:25 · 7351 阅读 · 0 评论 -
java 实现二叉树的基本操作
我建立的二叉树如下图所示:以下是使用Java语言实现二叉树的基本操作package com.ddh.binarytree;import java.util.*;@SuppressWarnings("all")public class BinaryTree { private TreeNode root=null; public BinaryTree(){ ...原创 2018-05-01 13:32:52 · 3388 阅读 · 2 评论 -
常见的排序算法Java实现
1、快速排序算法public class QuickSort { public static void quickSort(int k[] ,int n){ QSort(k,0,n-1); }private static void QSort(int[] k, int low, int high) { // TODO 自动生成的方法存根 int point; if(low <high...原创 2018-03-31 18:41:29 · 120 阅读 · 0 评论 -
数据结构常见的算法
二分法查找Java算法实现public static int binary(int a[],int value){ int low=0; int height=a.length-1; while(low<=height){ int middle=(height+low)/2; if(value==a[middle]) return middle; if(value&g...原创 2018-03-29 19:28:07 · 141 阅读 · 0 评论 -
插入类排序(直接插入和二分法插入)
/* 插入排序法 分类:内部比较排序 稳定性:稳定 类似与抓牌游戏*/void InsertionSort(int a[],int n) { int i, get, j; for (i = 1; i < n; i++) //类似于抓扑克牌排序 { int get = a[i]; //右手抓到一张扑克牌 int j = i - 1;//拿到左手上的牌总是排好序的 while (j &...原创 2018-03-01 17:05:57 · 445 阅读 · 0 评论 -
冒泡排序法和简单选择排序法
/*分类:内部比较排序稳定性:稳定冒泡排序法实现对数组的排序*/void Bubble_Sort(int a[], int n) { int i, j, temp; for (i = 0; i < n - 1; i++) { for (int j = 0; j< n - i - 1; j++) { if (a[j] > a[j + 1]) { temp = ...原创 2018-02-28 21:37:41 · 614 阅读 · 0 评论 -
二叉树的基本操作(C语言实现)
CSeQueue.h文件#include<malloc.h>typedefcharDataType;#define MAXSIZE 100 typedefstruct{ BiTree data[MAXSIZE];//队列存储区 int front, rear;//队头队尾指针}CSeQueue;//置空队列CSeQueue * InitSeQueue(); /*入队*/v...原创 2018-03-14 23:43:02 · 2176 阅读 · 0 评论 -
顺序表栈的基本操作
#include#include#include#define MAXSIZE 100typedef int datatype;/* 定义结构体,data指存储在栈中的数据 top 是指向栈顶元素*/typedef struct{datatype data[MAXSIZE];int top;}SeqStack;/* 初始化栈,将栈顶原创 2017-12-11 20:08:16 · 617 阅读 · 0 评论 -
排序算法之选择排序
堆排序: 一般都是对数组进行排序,这里我创建大顶堆来进行从小到大的排序,其实数组都是有下标的,我们可以将该数组写成完全二叉树的形式,然后再建立堆,大顶堆就是根大于左子节点和右子节点,对于每个子树都是一样的。这就是大顶堆堆,小顶堆反之。 再进行堆排序的时候我分为以下几步来实现的: 1创建大顶堆:通过对完全二叉树的分析可以看出,我们只需要对一...原创 2018-05-03 22:38:11 · 114 阅读 · 0 评论