随笔分类 - 数据结构
摘要:Go语言数组、切片和映射 数组、切片、映射的内部实现和基础功能,创建、声明、使用、迭代、值传递 数组 Go语言的数组是一个长度固定的数据类型,用于储存一段具有相同类型元素的连续块,可以存放整数或字符型等内置类型,也可以是某种数据结构。 数组的内存是连续分配的。正因如此CPU能把正在使用的数据缓存更久
阅读全文
摘要:Java集合之Collections工具类 public class Collections extends Object 此类仅包含对collection 进行操作或返回collection 的静态方法。 它包含对collection 进行操作的多态算法、“包装器”,它返回由指定collectio
阅读全文
摘要:java集合之HashMap Map接口的基于哈希表的实现。 此实现提供所有可选的映射操作,并允许空null值和空null键。(除了非同步和允许使用 null 之外,HashMap 类与 Hashtable 大致相同)该类不保证映射的顺序; 特别是它不保证该顺序恒久不变。此实现假定哈希函数将元素适当
阅读全文
摘要:java集合之TreeMap 基于红黑树(Red-Black tree)的 NavigableMap 实现。 映射根据其键的自然顺序进行排序,或者通过映射创建时提供的 Comparator 进行排序,具体取决于使用的构造函数。 此实现为 containsKey、get、put 和 remove 操作
阅读全文
摘要:java 集合之Interface Map<K,V> 类型参数:K- 此映射所维护的键的类型;V- 映射值的类型 将键映射到值的对象。 一个映射不能包含重复的键; 每个键最多可以映射到一个值。这个接口取代了 Dictionary 类,后者是一个完全抽象的类而不是一个接口。 Map 接口提供了三个 c
阅读全文
摘要:Java 集合之TreeSet 基于 TreeMap 的 NavigableSet 实现。 使用元素的自然顺序进行排序,或者通过在集合创建时提供的 Comparator 进行排序,具体取决于使用的构造函数。唯一,无序(没有按照输入顺序进行输出)又有序(按照升序进行遍历)。 此实现为基本操作(添加、删
阅读全文
摘要:HashSet 这个类实现了 Set 接口,由一个哈希表(实际上是一个 HashMap 实例)支持。 它不保证 set 的迭代顺序; 特别是它不保证该顺序恒久不变。此类允许 null 元素。 假设哈希函数在桶中正确地分散元素,那么这个类为基本操作( add、remove、contains 和 siz
阅读全文
摘要:Java 集合之Set接口 不包含重复元素的集合。 更确切地讲,set 不包含一对e1.equals(e2)的元素 e1 和 e2,并且最多包含一个空元素。 正如其名称所暗示的那样,此接口模仿了数学上的 set 抽象。 除了从 Collection 接口继承的那些之外,Set 接口对所有构造函数的协
阅读全文
摘要:java 集合之LinkedList List 和 Deque 接口的双向链表实现。 实现所有可选的列表操作,并允许所有元素(包括空值)。 除了实现 List 接口外,LinkedList 类还为在列表的开头及结尾 get、remove 和 insert 元素提供了统一的命名方法。这些操作允许将链接
阅读全文
摘要:Java 集合之ArrayList List 接口的可调整大小的数组实现。 实现所有可选的列表操作,并允许包括 null 在内的所有元素。 除了实现 List 接口之外,该类还提供了操作内部用于存储列表的数组大小的方法。 (这个类大致相当于 Vector,只是它是不同步的。) size、isEmpt
阅读全文
摘要:Java 集合之List接口 有序collection(也称为序列)。 此接口的用户可以对列表中每个元素的插入位置进行精确地控制。 用户可以通过它们的整数索引(在列表中的位置)访问元素,并在列表中搜索元素。 与set不同,列表通常允许重复元素。 更确切地讲,列表通常允许满足 e1.equals(e2
阅读全文
摘要:java 集合之Collection接口 方法 集合遍历 集合层次结构中的根接口。 一个集合代表一组对象,称为它的元素。 一些集合允许重复元素,而另一些则不允许。 有些是有序的,有些是无序的。 JDK 不提供此接口的任何直接实现:它提供了更具体的子接口(如 Set 和 List)的实现。 此接口通常
阅读全文
摘要:java 集合 接口 具体集合 数组,集合都是对多个数据进行存储(内存层面)操作的,简称为容器。在了解集合之前首先看一下数组的一些特点 数组一旦指定了长度,那么长度就被确定了,不可以更改。 int[] arr = new int[6]; 数组一旦声明了类型以后,数组中只能存放这个类型的数据。数组中只
阅读全文
摘要:线性表 数组链表 数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。数据结构往往同高效的检索算法和索引技术有关。即在计算机的缓存,内存,硬盘中如何组织管理数据的。重点在结构上,是按照什么结构
阅读全文
摘要:可变字符串StringBuilder&StringBuffer 字符串的分类: 不可变字符串:String。在地址不变的情况下,字符串不可改变可变字符串:StringBuilder,StringBuffer。地址不变的情况下,想把“ab”变成“abcd”是可能的,直接追加即可sb.append("c
阅读全文
摘要:Java String String 类代表字符串。Java 程序中的所有字符串字面值(如 "abc" )都作为此类的实例实现。 *The {@code String} class represents character strings. All * string literals in Java
阅读全文
摘要:Python 元组Tuple 定义 元组是不可变序列,通常用于储存异构数据的多项集(例如由 enumerate()内置函数所产生的二元组)。 元组也被用于需要同构数据的不可变序列的情况例如允许存储到 set或 dict]的实例)。 class tuple([iterable]) 可以用多种方式构建元
阅读全文
摘要:Python Set集合 定义 创建 基本方法 定义 Set Types-Set,frozenset set 对象是由具有唯一性的 hashable对象所组成的无序多项集。常见的用途包括成员测试、从序列中删除重复项以及计算数学运算,如交集、并集、差分和对称差分 与其他集合一样,set支持x in s
阅读全文
摘要:Python输出格式化 格式化字符串语法 1.format 1.1 Format String Syntax 格式字符串语法 str.format() 方法和 Formatter 类共享相同的格式字符串语法(尽管在 Formatter 的情况下,子类可以定义自己的格式字符串语法)。 语法与格式化字符
阅读全文
摘要:Python List List列表 内置可变序列。如果没有给出参数,构造函数会创建一个新的空列表。如果指定,参数必须是可迭代的。 list是可变序列,通常用于存储同类项的集合(其中精确的相似度因应用程序而异)。 可以通过多种方式构造列表: 使用一对方括号表示空列表:[] 使用方括号,用逗号分隔项目
阅读全文