上一页 1 2 3 4 5 6 ··· 10 下一页
摘要: hashtable: hashtable的设计是一个vector数组,每个数组内为一个链表,链表链着hash到同位置的节点,但链表的实现不是list或slist hashtable的节点设计: 1.存储元素值的变量val 2.一个指向下一个节点(同一个bucket内的)的指针next hashtab 阅读全文
posted @ 2019-09-16 09:25 李湘沅 阅读(221) 评论(0) 推荐(0) 编辑
摘要: map与set底层都是调用的RBTree 首先看RBTree RBTree 红黑树的特性: 1.根节点为黑色 2.新增节点一定是红色 3.节点只有红色或黑色两种颜色 4.两个节点颜色不能同为红 5.任意一条路径上的黑色节点个数相同 红黑树的节点设计: 1.表示节点颜色的变量color 2.链接左子树 阅读全文
posted @ 2019-09-16 08:09 李湘沅 阅读(224) 评论(0) 推荐(0) 编辑
摘要: static的作用: 1.第一条也是最重要的一条:隐藏 当我们同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性。如果加了static,就会对其它源文件隐藏。例如在a和msg的定义前加上static,main.c就看不到它们了。利用这一特性可以在不同的文件中定义同名函数和同 阅读全文
posted @ 2019-09-13 22:39 李湘沅 阅读(431) 评论(0) 推荐(0) 编辑
摘要: 数组中重复的数字 题目描述 在一个长度为 n 的数组里的所有数字都在 0 到 n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字是重复的,也不知道每个数字重复几次。请找出数组中任意一个重复的数字。 思路: 数组大小为n,数字范围为0~n-1,也就是说如果数组不重复,则排序后每个数组i上的元 阅读全文
posted @ 2019-09-13 11:24 李湘沅 阅读(245) 评论(0) 推荐(0) 编辑
摘要: 纯虚析构函数 理论上来说,将一个函数声明为纯虚函数后,这个类即变为抽象类。纯虚函数只提供接口,而不提供实现,但纯虚析构函数一定要提供定义。这是由C++特性决定的,编译器对派生类的析构函数会进行扩展,以静态调用的方式调用其每一个虚基类和上基类的析构函数,尽管是一个抽象类,但仍然要为这个纯虚析构提供实现 阅读全文
posted @ 2019-09-12 23:12 李湘沅 阅读(230) 评论(0) 推荐(0) 编辑
摘要: 完全背包问题 有N 种物品和一个容量为V 的背包,每种物品都有无限件可用。放入第i 种物品的费用是Ci,价值是Wi。求解:将哪些物品装入背包,可使这些物品的耗费的费用总和不超过背包容量,且价值总和最大。 现在的问题在于每个物品都有无限种,因此不能像01背包那样决定i物品放或者不放,因为放的话有多种可 阅读全文
posted @ 2019-09-12 12:38 李湘沅 阅读(723) 评论(6) 推荐(0) 编辑
摘要: deque deque是一种双向开头的现行连续空间 但它与vector有差异: 1.deque可以在O(1)的复杂度下进行头端插入与移除,而vector的头端操作效率极差 2.deque没有capacity概念。deque随时可以拼接一段新的连续空间。只有像vector这种可能出现空间不足的容器才需 阅读全文
posted @ 2019-09-12 00:45 李湘沅 阅读(366) 评论(0) 推荐(0) 编辑
摘要: list STL list实际上是一个双向链表 正因为如此,其迭代器是一个Bidirectional Iterators 迭代器的插入insert,接合splice以及删除erase都不会导致原有的迭代器(list中的其他迭代器)失效。 迭代器的数据结构: 内部一个成员node;node的类型为Li 阅读全文
posted @ 2019-09-11 23:28 李湘沅 阅读(193) 评论(0) 推荐(0) 编辑
摘要: 198. 打家劫舍 你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。 给定一个代表每个房屋存放金额的非负整数数组,计算你在不触动警报装置的情况下,能够偷窃到的最高金 阅读全文
posted @ 2019-09-06 09:23 李湘沅 阅读(446) 评论(0) 推荐(0) 编辑
摘要: vector 数据结构: 三个数据成员: iterator start;//指向vector目前使用空间头,即vector.begin() iterator finish;//指向vector目前使用空间尾,即vector.end() iterator end_of_storage;//指向vect 阅读全文
posted @ 2019-09-03 21:06 李湘沅 阅读(212) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 10 下一页