12 2018 档案

摘要:将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 注意: 两个链表都是有序的 如果某个链表为空,那就直接返回另外一个有序链表 然后我们就要比较两个链表的节点的顺序了 首先,我们定义一个result指针 比较两个链表的第一个元素哪个比较小 result指向小 阅读全文
posted @ 2018-12-18 21:28 timliudream 阅读(1910) 评论(0) 推荐(0)
摘要:给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。” 例如,给定如下二叉搜索树: root = [6, 阅读全文
posted @ 2018-12-17 21:34 timliudream 阅读(914) 评论(0) 推荐(0)
摘要:给定一个二叉树,判断其是否是一个有效的二叉搜索树。 一个二叉搜索树具有如下特征: 节点的左子树只包含小于当前节点的数。 节点的右子树只包含大于当前节点的数。 所有左子树和右子树自身必须也是二叉搜索树。 我们只要判断每个子树中的左孩子小于根节点,右孩子大于根节点 还有一个要注意的是,空树也是二叉搜索树 阅读全文
posted @ 2018-12-16 21:04 timliudream 阅读(957) 评论(0) 推荐(0)
摘要:给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?找出所有满足条件且不重复的三元组。 注意:答案中不可以包含重复的三元组。 我们先对数组排序,得到如下图的结果 我们要计算a+b+c=0,先对数组循环得到a,然后b就是a的索 阅读全文
posted @ 2018-12-15 20:56 timliudream 阅读(1085) 评论(0) 推荐(0)
摘要:给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的一个字母异位词。 你可以假设字符串只包含小写字母 首先看到题目的意思就是说两个字符串的字母一样,只是位置可以不一样 而且说明也说了,只包含小写字母。 那我们可以通过对两个字符串里面的字符进行排序,如果排序后的两个字符串是一样的,那么 阅读全文
posted @ 2018-12-15 18:10 timliudream 阅读(646) 评论(0) 推荐(0)
摘要:我们可以直接使用reflect.DeepEqual来比较两个slice、struct或者map是否相等 对于slice,我们还可以使用另外一种方法: 阅读全文
posted @ 2018-12-15 17:52 timliudream 阅读(595) 评论(0) 推荐(0)
摘要:提前写这篇文章,是因为深深的感觉到自己的无能 18年伊始,在浪潮干了大半年的我 还沉醉在深深的满足感中,感觉自己对工作游刃有余 那种自大和自我满足感充斥着我的心态 已经变得不会学习了 后来有一次机遇,让我有了跳出舒适的机会 我跳出来了,发现外面的世界跟我想象的太不一样了 我以为我是个中等的人,没想到 阅读全文
posted @ 2018-12-14 20:55 timliudream 阅读(329) 评论(1) 推荐(0)
摘要:给定一个数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口 k 内的数字。滑动窗口每次只向右移动一位。 返回滑动窗口最大值 其实这道题就是求给定数组中获取全部K个连续元素中最大值的集合 首先我们可能会遇到三中情况 当原始数组为空的,那就直接返回一个空 阅读全文
posted @ 2018-12-13 23:02 timliudream 阅读(1632) 评论(0) 推荐(0)
摘要:设计一个找到数据流中第K大元素的类(class)。注意是排序后的第K大元素,不是第K个不同的元素。 你的 KthLargest 类需要一个同时接收整数 k 和整数数组nums 的构造器,它包含数据流中的初始元素。每次调用 KthLargest.add,返回当前数据流中第K大的元素。 这道题我们可以想 阅读全文
posted @ 2018-12-12 15:05 timliudream 阅读(828) 评论(0) 推荐(0)
摘要:给定一个链表,判断链表中是否有环。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。 首先我们对情况1来画图看看解题: 其实上面得这几张图也说明了,如果链表中有环得话,那么快慢指针一定会相遇。 阅读全文
posted @ 2018-12-12 10:46 timliudream 阅读(873) 评论(0) 推荐(0)
摘要:使用队列实现栈的下列操作: push(x) -- 元素 x 入栈 pop() -- 移除栈顶元素 top() -- 获取栈顶元素 empty() -- 返回栈是否为空 注意: 你只能使用队列的基本操作-- 也就是 push to back, peek/pop from front, size, 和 阅读全文
posted @ 2018-12-08 16:31 timliudream 阅读(2016) 评论(0) 推荐(0)
摘要:使用栈实现队列的下列操作: push(x) -- 将一个元素放入队列的尾部。 pop() -- 从队列首部移除元素。 peek() -- 返回队列首部的元素。 empty() -- 返回队列是否为空。 说明: 你只能使用标准的栈操作 -- 也就是只有 push to top, peek/pop fr 阅读全文
posted @ 2018-12-08 15:17 timliudream 阅读(1584) 评论(0) 推荐(0)
摘要:给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 成为一个有序数组。 初始化 nums1 和 nums2 的元素数量分别为 m 和 n。 你可以假设 nums1 有足够的空间(空间大小大于或等于 m + n)来保存 nums2 中的元素。 由题 阅读全文
posted @ 2018-12-07 17:24 timliudream 阅读(3663) 评论(0) 推荐(0)
摘要:给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。 我们先来看看图示: 引入一个curr指针,指向头元素 判断curr.Val==curr.Next.Val,如果是一样的话,那就把curr.Next指向curr.Next.Next 如果curr.Val!=curr.Next.Val,那我 阅读全文
posted @ 2018-12-07 11:45 timliudream 阅读(523) 评论(0) 推荐(0)
摘要:假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数。 乍看这道题,以为是求解1和2的随机组合=n的问题,但是我们先来看看下面的表格: 从表格看出其实是一个斐波那契数列,那么代码就很简单了 阅读全文
posted @ 2018-12-07 10:55 timliudream 阅读(556) 评论(0) 推荐(0)
摘要:先看看代码: 再看看syslog的源码: 按理说这么使用是没错的,但是在Windows环境下编译的时候就会抛出: 这就不对了,明明是有的,但是却抛出未定义的错误。 那我们试试在Linux环境下编译会怎样: 没有错误抛出,那就说明这个syslog包的问题 在Windows环境下编写代码时慎重使用 阅读全文
posted @ 2018-12-06 10:28 timliudream 阅读(1396) 评论(2) 推荐(0)
摘要:实现 int sqrt(int x) 函数。 计算并返回 x 的平方根,其中 x 是非负整数。 由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去。 首先遇到这种题目肯定要想到使用内置得api来解答: 牛顿法:(以本题为例子) 计算平方根,其实就是计算 x^2 =n x^2 =n 的解 令f 阅读全文
posted @ 2018-12-04 22:17 timliudream 阅读(4529) 评论(0) 推荐(0)
摘要:首先连接不上,先查看云服务器上的安全组是否添加了对应的端口 如果打开了,那么久查看MongoDB是否允许远程连接 重点查看net下的bindIp,如果是127.0.0.1的话就改成0.0.0.0 因为使用 会报错 如果报错是: 那就直接删除掉那个文件 如果报错为: 那就直接删除掉那个文件: 如果报错 阅读全文
posted @ 2018-12-04 21:35 timliudream 阅读(2011) 评论(0) 推荐(0)