-
【数据结构】用C语言实现顺序表的各种操作(包括头删,尾删,插
所属栏目:[安全] 日期:2020-12-15 热度:117
//顺序表的各种操作(包括头删,尾删,插入,逆序,摧毁,清空等等)//头文件#ifndef _SEQLIST_H#define _SEQLIST_H#includestdio.htypedef int ElemType;#define INIT_SIZE 8typedef struct SeqList{ElemType *base;size_t capacity;size_t size;}SeqList;i[详细]
-
【数据结构】基数树
所属栏目:[安全] 日期:2020-12-15 热度:179
本节研究基数树相关的机制和实现; 基数树 说明几点 (1)基数树,是一种基于二进制表示键值的二叉查找树,类似字典树;其典型应用为IP地址的查找; (2)如果使用IPv4时,基数树只需要支持到最大深度为32就可以了,key值从最高位向最低位开始匹配,比如key[详细]
-
【数据结构】——排序算法——1.3、二叉树排序
所属栏目:[安全] 日期:2020-12-15 热度:94
【数据结构】——排序算法——1.2、二叉树排序 一、先上维基的图: 二叉树排序wiki 图一、二叉树排序 二、描述 二叉查找树 ( 英语: Binary Search Tree ),也称二叉搜索树、有序二叉树( 英语: ordered binary tree ),排序二叉树( 英语: sorted bina[详细]
-
【数据结构】串的堆分配表示与实现
所属栏目:[安全] 日期:2020-12-15 热度:56
采用堆分配存储表示的串被称为 堆串 ,与顺序串相比,地址空间仍是连续,但空间是在程序执行时动态分配的。 程序中会使用到的realloc函数: //realloc : (void *)reelloc (void *ptr,unsigned newsize); //使用 : char *str; // str = (char *)realloc(s[详细]
-
【数据结构】用C++实现单链表的各种操作(包括头删,尾删,插入
所属栏目:[安全] 日期:2020-12-15 热度:184
//头文件#ifndef _LIST_H#define _LIST_H#includeiostreamusing namespace std;templateclass Typeclass List;templateclass Typeclass ListNode{friend class ListType;public:ListNode() :data(Type()),next(NULL){}ListNode(Type d,ListNodeType *n = NUL[详细]
-
【数据结构】用C++实现单循环链表的各种操作(包括头删,尾删,
所属栏目:[安全] 日期:2020-12-15 热度:64
//头文件#ifndef _LIST_H#define _LIST_H#includeiostreamusing namespace std;templateclass Typeclass CList;templateclass Typeclass ListNode{friend class CListType;public:ListNode() :data(Type()),next(NULL){}ListNode(Type d,ListNodeType *n = N[详细]
-
《数据结构》学习-- Hash(1) --Hash简介
所属栏目:[安全] 日期:2020-12-15 热度:111
Hash Table哈希表的优缺点 Hash Table 概览 Practical Hash Table 1 Hash Table要素 2 Hash Function 21 Hash Function如何选择呢 22 常用的Hash Function 总结 本系列是《数据结构与算法分析-C语言描述》(Data Structures and Algorithm Analysis in C,作[详细]
-
《数据结构》学习-- Hash(2) --Separate Chaining
所属栏目:[安全] 日期:2020-12-15 热度:94
回顾 Separate Chaining简介 Rehash Separate Chaining实现 1 Hash表主体 2 初始化操作 3 Hash Function 4 Find 5 Insert 6 Remove 7 rehash 8 nextPrime HashTable测试 1正确性测试 2 性能测试 总结 本系列是《数据结构与算法分析-C语言描述》(Data Struct[详细]
-
《数据结构》学习-- Hash(3) --Open Addressing
所属栏目:[安全] 日期:2020-12-15 热度:153
1. 回顾 上一次我们讲了Hash冲突解决方案之开散列(Separate Chaining)。其优点是思路简单,实现也容易。这一回我们介绍另一种Hash冲突解决方案,名为闭散列法,或叫Open Addressing 你可能觉得闭散列和Open有些矛盾。其实,看了Open Addressing的核心思想[详细]
-
【数据结构】实现单链表(c++)
所属栏目:[安全] 日期:2020-12-15 热度:52
头文件: #pragma once#include iostreamusing namespace std;templateclass Typeclass List;// 结点类templateclass Typeclass NodeList{friend class ListType;public:NodeList();NodeList(Type d,NodeListType *n = NULL);private:Type data;NodeListType[详细]
-
【数据结构】实现循环链表(c++)
所属栏目:[安全] 日期:2020-12-15 热度:54
头文件: #pragma once#include iostreamusing namespace std;templateclass Typeclass List;// 结点类templateclass Typeclass NodeList{friend class ListType;public:NodeList();NodeList(Type d,NodeListType *n = NULL);private:Type data;NodeListType[详细]
-
【数据结构】双链表(c++)
所属栏目:[安全] 日期:2020-12-15 热度:141
头文件: #pragma once#include iostream#include assert.husing namespace std;templateclass Typeclass List;// 结点类templateclass Typeclass NodeList{friend class ListType;public:NodeList();NodeList(Type d,NodeListType *n = NULL,NodeListType *[详细]
-
【数据结构】双循环链表(c++)
所属栏目:[安全] 日期:2020-12-15 热度:112
头文件: #pragma once#include iostream#include assert.husing namespace std;templateclass Typeclass List;// 结点类templateclass Typeclass NodeList{friend class ListType;public:NodeList();NodeList(Type d,NodeListType *n = NULL,NodeListType *[详细]
-
【数据结构】顺序栈的实现(c++)
所属栏目:[安全] 日期:2020-12-15 热度:122
头文件: #pragma once#include iostream#include assert.husing namespace std;templateclass Typeclass SeqStack{public:SeqStack(size_t sz = INIT_SZ);~SeqStack();public:bool empty()const;bool full()const;void show()const;bool push(const Type x)[详细]
-
【数据结构】顺序队列的实现(c++)
所属栏目:[安全] 日期:2020-12-15 热度:109
头文件: #pragma once#include iostream#include assert.husing namespace std;templateclass Typeclass SeqQueue{public:SeqQueue(size_t sz = INIT_SZ);~SeqQueue();public:bool empty()const;bool full()const;void show()const;bool push(const Type x)[详细]
-
【数据结构】循环队列的实现(c++)
所属栏目:[安全] 日期:2020-12-15 热度:51
头文件: #pragma once#include iostream#include assert.husing namespace std;templateclass Typeclass CQueue{public:CQueue(size_t sz = INIT_SZ);~CQueue();public:bool full()const;bool empty()const;void show()const;bool push(const Type x);bool[详细]
-
【数据结构】栈的应用--括号的匹配(c++)
所属栏目:[安全] 日期:2020-12-15 热度:164
头文件: #pragma once#include iostream#include assert.h#include string.husing namespace std;templateclass Typeclass SeqStack{public:SeqStack(size_t sz = INIT_SZ);~SeqStack();public:bool empty()const;bool full()const;void show()const;bool p[详细]
-
几种常见的【排序】与【数据结构】
所属栏目:[安全] 日期:2020-12-15 热度:158
(一)常见排序 import java.util.Arrays; public class Sort { //快速排序 private static int partition ( int [] arr, int low, int hight) { int pivotkey = arr[low]; while (low hight) { while (low hight pivotkey = arr[hight]) --hight; int temp1[详细]
-
【数据结构】用C++实现双链表的各种操作(包括头删,尾删,插入
所属栏目:[安全] 日期:2020-12-15 热度:118
//【数据结构】用C++实现双链表的各种操作(包括头删,尾删,插入,逆序,摧毁,清空等等)//头文件#ifndef _LIST_H#define _LIST_H#includeiostreamusing namespace std;templateclass Typeclass DList;templateclass Typeclass ListNode{friend class DLis[详细]
-
【数据结构】用C++实现双循环链表的各种操作(包括头删,尾删,
所属栏目:[安全] 日期:2020-12-15 热度:126
//【数据结构】用C++实现单循环链表的各种操作(包括头删,尾删,插入,逆序,摧毁,清空等等)//头文件#ifndef _CDLIST_H#define _CDLIST_H#includeiostreamusing namespace std;templateclass Typeclass CDList;templateclass Typeclass ListNode{friend c[详细]
-
【数据结构】用C++编写栈及基本操作(包括入栈,出栈,获得栈顶
所属栏目:[安全] 日期:2020-12-15 热度:193
//【数据结构】用C++编写栈及基本操作(包括入栈,出栈,获得栈顶,摧毁,清空等等)//头文件#ifndef _SEQ_STACK_#define _SEQ_STACK_#include iostreamusing namespace std;template class Typeclass SeqStack{public:SeqStack(size_t sz=INIT_SIZE){capaci[详细]
-
【数据结构】用C++编写队列及基本操作(包括插入,出队列,摧毁
所属栏目:[安全] 日期:2020-12-15 热度:188
//【数据结构】用C++编写队列及基本操作(包括插入,出队列,摧毁,清空等等)//头文件#ifndef _SEQ_STACK_#define _SEQ_STACK_#include iostreamusing namespace std;template class Typeclass Queue{public:Queue(size_t sz = INIT_SIZE){capacity = sz IN[详细]
-
【数据结构】用栈检测括号是否匹配
所属栏目:[安全] 日期:2020-12-15 热度:102
//【数据结构】用栈检测括号是否匹配//头文件 栈#ifndef _STACK_#define _STACK_#include iostream#include string.husing namespace std;template class Typeclass Stack{public:Stack(size_t sz = INIT_SIZE){capacity = sz INIT_SIZE ? sz : INIT_SIZE;ba[详细]
-
【数据结构】栈的应用--数制转换(c++)
所属栏目:[安全] 日期:2020-12-15 热度:110
头文件: #pragma once#include iostream#include assert.husing namespace std;templateclass Typeclass SeqStack{public:SeqStack(size_t sz = INIT_SZ);~SeqStack();public:bool empty()const;bool full()const;void show()const;bool push(const Type x)[详细]
-
【数据结构】栈的应用--行编辑程序(c++)
所属栏目:[安全] 日期:2020-12-15 热度:135
头文件: #pragma once#include iostream#include assert.husing namespace std;templateclass Typeclass SeqStack{public:SeqStack(size_t sz = INIT_SZ);~SeqStack();public:bool empty()const;bool full()const;void show()const;bool push(const Type x)[详细]