摘要: 摘自redis设计与实现 通过客户端,发送slave of xxx给redis从服务器,即可实现主从服务器之间的复制。如果主服务器设置了requirepass进行身份验证,从服务器需要设置masterauth,只有两个设置项的值相同,同步操作才能进行。 旧版复制功能的实现 复制功能分为同步和命令传播 阅读全文
posted @ 2019-05-28 18:16 yiyezhou2012 阅读(169) 评论(0) 推荐(0) 编辑
摘要: 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。 你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。 示例: 给定 nums = [2, 7, 11, 15], target = 9 因为 num 阅读全文
posted @ 2019-05-28 17:47 yiyezhou2012 阅读(197) 评论(0) 推荐(0) 编辑
摘要: 题目描述:给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。 如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。 您可以假设除了数字 0 之外,这两个数都不会以 0 开头。 示例: 输入:(2 ->  阅读全文
posted @ 2019-05-28 17:47 yiyezhou2012 阅读(87) 评论(0) 推荐(0) 编辑
摘要: 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。 示例 1: 输入: "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。 示例 2: 输入: "bbbbb" 输出: 1 解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。 阅读全文
posted @ 2019-05-28 17:46 yiyezhou2012 阅读(93) 评论(0) 推荐(0) 编辑
摘要: 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。 示例 1: 输入: 123输出: 321 示例 2: 输入: -123输出: -321 示例 3: 输入: 120输出: 21 代码实现: packag 阅读全文
posted @ 2019-05-28 17:45 yiyezhou2012 阅读(91) 评论(0) 推荐(0) 编辑
摘要: 给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。 示例 1: 输入: "babad" 输出: "bab" 注意: "aba" 也是一个有效答案。 示例 2: 输入: "cbbd" 输出: "bb" 中心扩展法 代码实现: package mainimport  阅读全文
posted @ 2019-05-28 17:45 yiyezhou2012 阅读(114) 评论(0) 推荐(0) 编辑
摘要: 堆排序的思想 因为堆的形式是完全二叉树,跟数组的索引形成映射,可以使用数组保存。先构建最大(小)堆,根结点就是最大(小)值,删除根结点之后的节点重新构建堆,依此顺序,即可完成堆排序。 代码实现 package mainimport "fmt"func main() { a := []int{34,  阅读全文
posted @ 2019-05-28 17:43 yiyezhou2012 阅读(429) 评论(0) 推荐(0) 编辑
摘要: 冒泡排序,是稳定排序,时间复杂度是O(N2)。 算法稳定性:假设在数列中存在a[i]=a[j],若在排序之前,a[i]在a[j]前面;并且排序之后,a[i]仍然在a[j]前面。则这个排序算法是稳定的! 代码实现: func main() { a := []int{10, 5, 2, 9, 8, 6, 阅读全文
posted @ 2019-05-28 17:41 yiyezhou2012 阅读(238) 评论(0) 推荐(0) 编辑