数据结构
Dband
我把委屈变成笑容 只想做个好梦
展开
-
树状数组
树状数组 手画的图有点丑emmm 第一个函数 lowbit函数(找出这个数对应的二进制从右往左数第一个为1的数字) 求lowbit有两种方法 1. int lowbit (int x) { return x&-x; //利用的是补码 } 2. int lowbit(int i){ int a...原创 2018-07-31 12:26:11 · 133 阅读 · 0 评论 -
八大排序算法及代码
1.插入排序(1)直接插入排序从第一个元素开始,该元素可以认为已经被排序;取出下一个元素,在已经排序的元素序列中从后向前扫描;如果该元素(已排序)大于新元素,将该元素移到下一位置;重复步骤3,直到找到已排序的元素小于或者等于新元素的位置;将新元素插入到该位置后;重复步骤2~5。原始序列:49 38 65 97 13 27 49第1次: 38 49 65 97 13 27 ...原创 2018-12-12 18:20:36 · 297 阅读 · 0 评论 -
D - Fence Repair(哈夫曼树+优先队列)
D - Fence RepairTime Limit:2000MS Memory Limit:65536KB 64bit IO Format:%I64d & %I64uSubmitStatusPracticePOJ 3253use MathJax to parse formulasDescriptionFarmer John wants to repair ...原创 2018-11-05 18:39:44 · 232 阅读 · 0 评论 -
数据结构——约瑟夫环(循环链表)
n个数据元素构成一个环,从环中任意位置开始计数,计到m将该元素从表中取出,重复上述过程,直至表中只剩下一个元素。提示:用一个无头结点的循环单链表来实现n个元素的存储。样例:输入:10 3 1 //分别为总数,出列的人数到的数字,开始数的人的编号。输出:3 6 9 2 7 1 8 5 10 4 //按照出列的先后顺序给出的出列的人的编号。#include<stdio.h>...原创 2018-10-30 20:01:54 · 27094 阅读 · 7 评论 -
数据结构——链表的操作
直接贴模板代码以后再写注释包括插入删除取元素操作#include<stdio.h>#include<malloc.h>#define ERROR 0#define OK 1typedef int ElemType; /*定义表元素的类型*/typedef struct LNode /*线性表的单链表存储*/{ ElemType data; ...原创 2018-10-30 18:58:45 · 327 阅读 · 1 评论 -
数据结构——线性表的操作
终于学会了顺序表的代码,记录下来1.线性表顺序存储的概念:指的是在内存中用一段地址连续的存储单元依次存储线性表中的元素。2.采用的实现方式:一段地址连续的存储单元可以用固定数组或者动态存储结构来实现,这里采用动态分配存储结构。代码:#include&lt;stdio.h&gt;#include&lt;malloc.h&gt;#define ERROR 0#define OK 1...原创 2018-10-30 17:56:15 · 431 阅读 · 0 评论 -
二叉树建树及遍历的递归和非递归实现
1.定义typedef struct BiTNode{ char data; struct BiTNode *lchild,*rchild;} BiTNode,*BiTree; //BiTree即BiTNode *2.建树int CreateBiTree(BiTree &T) { char data; scanf("%c",&...原创 2018-10-29 19:54:17 · 570 阅读 · 0 评论 -
Phone List(排序二维字符串)
DescriptionGiven a list of phone numbers, determine if it is consistent in the sense that no number is the prefix of another. Let’s say the phone catalogue listed these numbers:Emergency 911Alice ...原创 2018-10-25 19:40:37 · 275 阅读 · 0 评论 -
数据结构——哈夫曼编码译码器
题目5: 哈夫曼编/译码器 [问题描述]利用哈夫曼编码进行通信可以大大提高信道利用率,缩短信息传输时间,降低传输成本。但是,这要求在发送端通过一个编码系统对待传数据预先编码,在接收端将传来的数据进行译码(复原)。对于双工信道(即可以双向传输信息的信道),每端都需要一个完整的编/译码系统。试为这样的信息收发站写一个哈夫曼码的编/译码系统。[基本要求] 一个完整的系统应具有以下功能:1、I:初...原创 2019-01-09 11:19:03 · 13424 阅读 · 6 评论