- 1 字符串 redis并未使用传统的c语言字符串表示,它自己构建了一种简单的动态字符串抽象类型。 在redis里,c语言字符串只会作为字符串字面量出现,用在无需修改的地方。 当需要一个可以被修改的字符串时,redis就会使用自己实现的SDS(simple dynamic string)。比如在redis数据库里,包含字符串的键值对底层都是SDS实现的,不止如此,SDS还... 1 字符串 redis并未使用传统的c语言字符串表示,它自己构建了一种简单的动态字符串抽象类型。 在redis里,c语言字符串只会作为字符串字面量出现,用在无需修改的地方。 当需要一个可以被修改的字符串时,redis就会使用自己实现的SDS(simple dynamic string)。比如在redis数据库里,包含字符串的键值对底层都是SDS实现的,不止如此,SDS还...
- 给定一个非负整数 num。对于 0 ≤ i ≤ num 范围中的每个数字 i ,计算其二进制数中的 1 的数目并将它们作为数组返回。 示例 1: 输入: 2 输出: [0,1,1] 示例 2: 输入: 5 输出: [0,1,1,2,1,2] 进阶: 给出时间复杂度为O(n*sizeof(integer))的解答非常容易... 给定一个非负整数 num。对于 0 ≤ i ≤ num 范围中的每个数字 i ,计算其二进制数中的 1 的数目并将它们作为数组返回。 示例 1: 输入: 2 输出: [0,1,1] 示例 2: 输入: 5 输出: [0,1,1,2,1,2] 进阶: 给出时间复杂度为O(n*sizeof(integer))的解答非常容易...
- 给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数。 示例 1: 输入: 1->2->3->4->5->NULL, k = 2 输出: 4->5->1->2->3->NULL 解释: 向右旋转 1 步: 5->1->2-... 给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数。 示例 1: 输入: 1->2->3->4->5->NULL, k = 2 输出: 4->5->1->2->3->NULL 解释: 向右旋转 1 步: 5->1->2-...
- 给定一个包括 n 个整数的数组 nums 和 一个目标值 target。找出 nums 中的三个整数,使得它们的和与 target 最接近。返回这三个数的和。假定每组输入只存在唯一答案。 例如,给定数组 nums = [-1,2,1,-4], 和 target = 1. 与 target 最接... 给定一个包括 n 个整数的数组 nums 和 一个目标值 target。找出 nums 中的三个整数,使得它们的和与 target 最接近。返回这三个数的和。假定每组输入只存在唯一答案。 例如,给定数组 nums = [-1,2,1,-4], 和 target = 1. 与 target 最接...
- 给定三个字符串 s1, s2, s3, 验证 s3 是否是由 s1 和 s2 交错组成的。 示例 1: 输入: s1 = "aabcc", s2 = "dbbca", s3 = "aadbbcbcac" 输出: true 示例 2: 输入: s1 = "aabcc", s2 = "dbbca", s3... 给定三个字符串 s1, s2, s3, 验证 s3 是否是由 s1 和 s2 交错组成的。 示例 1: 输入: s1 = "aabcc", s2 = "dbbca", s3 = "aadbbcbcac" 输出: true 示例 2: 输入: s1 = "aabcc", s2 = "dbbca", s3...
- Description 求一个字符串的所有前缀在串中出现的次数之和 Input 多组用例,每组用例占一行为一个长度不超过100000的字符串,以文件尾结束输入 Output 对于每组用例,输出该字符串的所有前缀在串中出现的次数之和,结果模256 Sample Input aaa abab... Description 求一个字符串的所有前缀在串中出现的次数之和 Input 多组用例,每组用例占一行为一个长度不超过100000的字符串,以文件尾结束输入 Output 对于每组用例,输出该字符串的所有前缀在串中出现的次数之和,结果模256 Sample Input aaa abab...
- 合并 k 个排序链表,返回合并后的排序链表。请分析和描述算法的复杂度。 示例: 输入: [ 1->4->5, 1->3->4, 2->6 ] 输出: 1->1->2->3->4->4->5->6 思路:把... 合并 k 个排序链表,返回合并后的排序链表。请分析和描述算法的复杂度。 示例: 输入: [ 1->4->5, 1->3->4, 2->6 ] 输出: 1->1->2->3->4->4->5->6 思路:把...
- 丢人,我就是按插入排序老老实实写的啊。。。。 别人肯定map了hhh。 对链表进行插入排序。 插入排序的动画演示如上。从第一个元素开始,该链表可以被认为已经部分排序(用黑色表示)。 每次迭代时,从输入数据中移除一个元素(用红色表示),并原地将其插入到已排好序的链表中。 插入排序算法: 插入排序是迭代的,每次只移动一个元素,直到所有元素可以形成一... 丢人,我就是按插入排序老老实实写的啊。。。。 别人肯定map了hhh。 对链表进行插入排序。 插入排序的动画演示如上。从第一个元素开始,该链表可以被认为已经部分排序(用黑色表示)。 每次迭代时,从输入数据中移除一个元素(用红色表示),并原地将其插入到已排好序的链表中。 插入排序算法: 插入排序是迭代的,每次只移动一个元素,直到所有元素可以形成一...
- 文章目录 一.二叉树1.二叉树的定义2.二叉树的性质3.二叉树的存储结构1).顺序存储结构2).链式存储结构3).结点代码实现 二.二叉树的遍历(重点)1.遍历理论过程2.前序遍历3.中序遍历4.后序遍历 一.二叉树 1.二叉树的定义 把满足以下条件的树结构称为二叉树: 1.每个结点的度都不大于2. 2.每个结点的孩子结点次序不... 文章目录 一.二叉树1.二叉树的定义2.二叉树的性质3.二叉树的存储结构1).顺序存储结构2).链式存储结构3).结点代码实现 二.二叉树的遍历(重点)1.遍历理论过程2.前序遍历3.中序遍历4.后序遍历 一.二叉树 1.二叉树的定义 把满足以下条件的树结构称为二叉树: 1.每个结点的度都不大于2. 2.每个结点的孩子结点次序不...
- 题目031:请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母。 ''' def tm031(): ''' 【个人备注】:按照题意要求实现了就行 ''' week = ['monday','tuesday','wedne... 题目031:请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母。 ''' def tm031(): ''' 【个人备注】:按照题意要求实现了就行 ''' week = ['monday','tuesday','wedne...
- 给定一个整数,编写一个函数来判断它是否是 2 的幂次方。 示例 1: 输入: 1 输出: true 解释: 20 = 1 示例 2: 输入: 16 输出: true 解释: 24 = 16 示例 3: 输入: 218 输出: false 本题思路转载位运算的常用技巧:lowbit运算,包含lowbit公式、讲解、证明 ... 给定一个整数,编写一个函数来判断它是否是 2 的幂次方。 示例 1: 输入: 1 输出: true 解释: 20 = 1 示例 2: 输入: 16 输出: true 解释: 24 = 16 示例 3: 输入: 218 输出: false 本题思路转载位运算的常用技巧:lowbit运算,包含lowbit公式、讲解、证明 ...
- 介绍了链表和基本操作 用一组物理位置任意的存储单元来存放线性表的数据元素。 这组存储单元既可以是连续的,也可以是不连续的,甚至是零散分布在内存中的任意位置上的。因此,链表中元素的逻辑次序和 物理次序不一定相同。 定义: typedef struct Lnode{ //声明结点的类型和指向结点的指针类型 ElemType data; //数据元... 介绍了链表和基本操作 用一组物理位置任意的存储单元来存放线性表的数据元素。 这组存储单元既可以是连续的,也可以是不连续的,甚至是零散分布在内存中的任意位置上的。因此,链表中元素的逻辑次序和 物理次序不一定相同。 定义: typedef struct Lnode{ //声明结点的类型和指向结点的指针类型 ElemType data; //数据元...
- 给定两个单词 word1 和 word2,计算出将 word1 转换成 word2 所使用的最少操作数 。 你可以对一个单词进行如下三种操作: 插入一个字符 删除一个字符 替换一个字符 示例 1: 输入: word1 = "horse", word2 = "ros" 输出: 3 解释: h... 给定两个单词 word1 和 word2,计算出将 word1 转换成 word2 所使用的最少操作数 。 你可以对一个单词进行如下三种操作: 插入一个字符 删除一个字符 替换一个字符 示例 1: 输入: word1 = "horse", word2 = "ros" 输出: 3 解释: h...
- c语言版排序查找完成,带详细解释,一下看到爽,能直接运行看效果。 /* Note:Your choice is C IDE */#include "stdio.h"#include"stdlib.h"#define MAX 10void SequenceSearch(int *fp,int Length);void Search(int *fp,int length... c语言版排序查找完成,带详细解释,一下看到爽,能直接运行看效果。 /* Note:Your choice is C IDE */#include "stdio.h"#include"stdlib.h"#define MAX 10void SequenceSearch(int *fp,int Length);void Search(int *fp,int length...
- 文章目录 1.树的定义2.树的基本术语 1.树的定义 树是n(n>=0)个结点的有限集合T,当n=0时,称为空树,当n>0时,该集合满足如下条件: 1.其中必有一个称为根的特定结点,它没有直接前驱,但是有零个或多个直接后续。 2.其中n-1个结点可以划分成m(m>=0)个互不相交的有限集T1,T2,T3,T4…其中Ti又是一棵树,称为根的子树... 文章目录 1.树的定义2.树的基本术语 1.树的定义 树是n(n>=0)个结点的有限集合T,当n=0时,称为空树,当n>0时,该集合满足如下条件: 1.其中必有一个称为根的特定结点,它没有直接前驱,但是有零个或多个直接后续。 2.其中n-1个结点可以划分成m(m>=0)个互不相交的有限集T1,T2,T3,T4…其中Ti又是一棵树,称为根的子树...
上滑加载中