上一页 1 2 3 4 5 6 ··· 19 下一页
摘要: 什么是库 库是写好的,成熟的,可以复用的代码,一般程序运行都需要依赖许多底层库文件。 本质上来说库是一种可可执行代码的二进制形式,可以被操作系统载入内存执行,库有两种:静态库(.a、.lib)和动态库(.so、.dll)。 静态、动态是指链接,将一个程序编译成可执行程序步骤如下: 程序编译过程 静态 阅读全文
posted @ 2020-06-21 16:51 Galaxy_hao 阅读(860) 评论(0) 推荐(0) 编辑
摘要: 简介 googletest是Google公司开发的一款跨平台的c++测试框架。 依赖 Bazel或者CMake(通常用cmake) 支持c++11标准的编译器 安装 下载 git clone https://github.com/google/googletest.git 编译 cd googlet 阅读全文
posted @ 2020-06-21 08:09 Galaxy_hao 阅读(5466) 评论(1) 推荐(1) 编辑
摘要: 题目 栈排序。 编写程序,对栈进行排序使最小元素位于栈顶。最多只能使用一个其他的临时栈存放数据,但不得将元素复制到别的数据结构(如数组)中。该栈支持如下操作:push、pop、peek 和 isEmpty。当栈为空时,peek 返回 -1。 示例1: 输入: ["SortedStack", "pus 阅读全文
posted @ 2020-06-20 20:40 Galaxy_hao 阅读(182) 评论(0) 推荐(0) 编辑
摘要: 题目 实现一个MyQueue类,该类用两个栈来实现一个队列。 示例: MyQueue queue = new MyQueue(); queue.push(1); queue.push(2); queue.peek(); // 返回 1 queue.pop(); // 返回 1 queue.empty 阅读全文
posted @ 2020-06-19 18:45 Galaxy_hao 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 题目 堆盘子。设想有一堆盘子,堆太高可能会倒下来。因此,在现实生活中,盘子堆到一定高度时,我们就会另外堆一堆盘子。请实现数据结构SetOfStacks,模拟这种行为。SetOfStacks应该由多个栈组成,并且在前一个栈填满时新建一个栈。此外,SetOfStacks.push()和SetOfStac 阅读全文
posted @ 2020-06-18 21:11 Galaxy_hao 阅读(180) 评论(0) 推荐(0) 编辑
摘要: 思路 借助辅助栈保存当前栈最小值。 入栈:如果入栈元素小于最小栈的栈顶元素,则同时加入最小栈;否则,将最小栈栈顶元素再次加入最下栈 出栈:同时弹出两个栈中元素 代码 时间复杂度:O(1) 空间复杂度:O(1) class MinStack { stack<int> st1; stack<int> s 阅读全文
posted @ 2020-06-17 18:34 Galaxy_hao 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 题目 三合一。描述如何只用一个数组来实现三个栈。 你应该实现push(stackNum, value)、pop(stackNum)、isEmpty(stackNum)、peek(stackNum)方法。stackNum表示栈下标,value表示压入的值。 构造函数会传入一个stackSize参数,代 阅读全文
posted @ 2020-06-16 20:59 Galaxy_hao 阅读(269) 评论(0) 推荐(0) 编辑
摘要: 是什么 skiplist特点 有几个层组成,每层是一个有序的链表 第一层包含所有元素,如果元素x出现在第i层,则所有比i小的层都包含x 头指针指向最高处的第一个元素 参考LevelDB源码剖析之基础部件-SkipList中示意图: skiplist结构 图1.1中红色部分为初始化状态,即head各个 阅读全文
posted @ 2020-06-16 09:33 Galaxy_hao 阅读(337) 评论(0) 推荐(0) 编辑
摘要: 题目 给定一个有环链表,实现一个算法返回环路的开头节点。 有环链表的定义:在链表中某个节点的next元素指向在它前面出现过的节点,则表明该链表存在环路。 示例 1: 输入:head = [3,2,0,-4], pos = 1 输出:tail connects to node index 1 解释:链 阅读全文
posted @ 2020-06-15 18:31 Galaxy_hao 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 题目 给定两个(单向)链表,判定它们是否相交并返回交点。请注意相交的定义基于节点的引用,而不是基于节点的值。换句话说,如果一个链表的第k个节点与另一个链表的第j个节点是同一节点(引用完全相同),则这两个链表相交。 示例 1: 输入:intersectVal = 8, listA = [4,1,8,4 阅读全文
posted @ 2020-06-14 18:21 Galaxy_hao 阅读(160) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 19 下一页