如有问题 欢迎指点 #include <stdio.h> #include <stdlib.h> /** * 每次操作 都是操作代理指针 不能操作链表的头指针!! * setbuf(stdin,NULL);清空输入缓存 * @return */ struct N...
BST Binary Search Tree也被成为 ordered binary tree(有序二叉树)或 sorted binary tree(排序二...
Tree ITree Interface package _11_Tree._01_trie; import java.util.List; public interface ITree<E> { int getSize();//获取节点数 TreeNode&l...
ConsistentHashIng 一致性哈希起源是关于集群和负载均衡 解决服务器集群通信、缓存集群的问题 先构造一个长度为23^2的整数环(这个环被...
BloomFilter 前言 Data structures are nothing different. They are like the bookshelves of your application where you can organize your data. Differen...
MyHashSet 主要用作数据去重 IHashSet interface 定义接口 package _10_Hash; import java.uti...
哈希值的一些算法 package _10_Hash; public class HashFunctions { //hash决定index的分散程度 避免冲突 (尤其是针对拉链发 分散程度越大 算法拉链法效率越高) //prime 是基数 也是桶的个数 /** ...
MyHashMap Map Interface keySet 主要作用于HashSet package _10_Hash; import java.ut...
MyHashMap Interface package _10_Hash; public interface IMap<K, V> { /** * 清除所有键值对 */ void clear(); /** * key是否已存...
HashMapTest package _10_Hash; import java.util.HashMap; import java.util.Ite...
CatDogAsylum cc150 模拟 有家动物收容所只收留猫和狗,但有特殊的收养规则,收养人有两种收养方式, 第一种为直接收养所有动物中最早进入收容所的, 第二种为选择收养的动物类型(猫或狗),并收养该种动物中最早进入收容所的。 给定一个操作序列int[][2] ope(C++中为vec...
TwoStackSort cc150 请编写一个程序,按升序对栈进行排序(即最大元素位于栈顶),要求最多只能使用一个额外的栈存放临时数据,但不得将元素复制...
QueueByStack cc150 用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 思路 第二个栈等于是维护 如果只有一个栈要出队列的元素 那么这个元素在队列的最底层 所以我们用把栈的元素一依次push到维护栈内 从而 是的 要出队列的在 最上方 也是实...
SetOfStacks cc150 请实现一种数据结构SetOfStacks,由多个栈组成,其中每个栈的大小为size,当前一个栈填满时,新建一个栈。 该...
思路 维护最小值栈 建立兄弟栈 在push新元素的时候 对新元素和旧元素比较大小 小 就入栈新元素 反之入栈 peek(旧元素) 出栈时 兄弟栈也依次出栈即可 优化 空间换时间 没有更小的就不加入到兄弟栈 在push新元素的时候 对新元素和旧元素比较大小 然后入栈即可 pop时 在兄弟栈对比...
cc150P 131 只用一个数组实现三个栈 先利用数组实现最普通的栈 并对其操作 类比法 把一个数组等分为三个栈 所以我设定了 三类变量 记录 栈头 尾...
Queue 队列是一种先进先出 后进后出的数据结构~~ 就像是食堂排队一样 不同于栈 先进后出 后进先出~ 用例算法: IQueue 接口 package _09_Linear.Queue; public interface IQueue<T> { /** *...
Stack 栈是... 定义IStack接口 package _09_Linear.Stack; public interface IStack<...
如何高效的检测单链表是否是回文链表呢 方法一 遍历一遍 计数 然后再找到中间node 开始对比 方法二 进步指针f、s后者是前者两倍 到null截至 同时栈入f 判断s是否null 来决定和栈出对比的起点 代码 package _09_Linear.list; import j...
给定一个有环链表,实现一个算法返回环路的开头结点 有环链表的定义: 在链表中某个结点的next元素指向在它前面出现过的节点,则表明该链表存在环路 方法...