LeetCode
文章平均质量分 73
cdai
这个作者很懒,什么都没留下…
展开
-
Leetcode解题-链表(2.2.1)AddTwoNumbers
1 题目:2.2.1 Add Two NumbersYou are given two linked lists representing two non-negative numbers. The digits are stored in reverse order and each of their nodes contain a single digit. Add the two numbe原创 2015-03-28 08:42:40 · 2451 阅读 · 0 评论 -
Leetcode分类解析:二分查找
Leetcode分类解析:二分查找1.原始二分查找1.1 典型例题35-Search Insert Position (Medium): Given a sorted array and a target value, return the index if the target is found. If not, return the index where it would be if it w原创 2016-08-14 09:04:25 · 5237 阅读 · 4 评论 -
Leetcode分类解析:链表
Leetcode分类解析:链表1.分类地图按照惯例,首先来看一下链表在本系列所处的位置:基础结构(Fundamentals) 1.1 数组和链表(Array&List):插入、删除、旋转等操作。 1.2 栈和队列(Stack&Queue):栈的典型应用。 1.3 树(Tree):构建、验证、遍历、转换。 1.4 字符串(String):转换、搜索、运算。积木块(Building Bloc原创 2016-08-13 08:28:14 · 4172 阅读 · 2 评论 -
Leetcode分类解析:组合算法
Leetcode分类解析:组合算法所谓组合算法就是指:在解决一些算法问题时,需要产生输入数据的各种组合、排列、子集、分区等等,然后逐一确认每种是不是我们要的解。从广义上来说,组合算法可以包罗万象,甚至排序、各种搜索算法都可以算进去。最近读《The Algorithm Design Manual》时了解到这种归类,上网一查,甚至有专门的书籍讲解,而且Knuth的巨著TAOCP的第四卷就叫组合算法,看来原创 2016-07-04 23:47:17 · 8090 阅读 · 4 评论 -
Leetcode算法题分类解析:(一)总览
Leetcode算法题分类解析:(一)总览1.为何/如何刷题1.1 必要性刷题刷题,从“刷”字就能看出其中的机械性和应试性,但这就是几乎所有IT公司面试中的一环。尽管面试者可能也对这种考察方式不是很满意,可在没有更好的方式之前,这个现状会一直保持下去。我们改变不了这个现状,那就适应它吧。1.2 分类攻破为什么要这么麻烦地分类呢?照着Leetcode的题目顺序做不就好了?个人觉得分类有几个动机:一是原创 2016-06-17 23:01:03 · 12567 阅读 · 3 评论 -
Leetcode难度表及解题汇总
Leetcode难度表及解题汇总参考网上一份题目难度表,以及本人的解题。 Id Question Difficulty Frequency Data Structures Algorithms Blog Comment 1 Two Sum 2 5 array+set sort+2ptr 2 Add Two Numbers原创 2015-05-08 22:08:21 · 4251 阅读 · 0 评论 -
Leetcode解题-链表(2.2.6)RotateList
1 题目:Rotate ListGiven a list, rotate the list to the right by k places, where k is non-negative.For example:Given 1->2->3->4->5->nullptr and k = 2, return 4->5->1->2->3->nullptr.2 实现首先确定题目要求的旋转都需要哪些结点原创 2015-03-28 11:27:33 · 1909 阅读 · 0 评论 -
Leetcode解题-树(5.0.0)基础类
与第二章类似,LeetCode指定了TreeNode实现。为了方便后续习题的编写和测试,创建一个基础父类,包含TreeNode实现,以及create()和print()创建和打印树的方法。其中create()采用类似“堆”的方式,用数组表示树形结构,复习一下,左右子结点就是2*i和2*i+1。而print()方法采用前序遍历的方式,通过额外一个参数level确定当前结点的深度,从而打印一些制表符或原创 2015-03-28 11:25:09 · 2057 阅读 · 0 评论 -
Leetcode解题-链表(2.2.3)PartitionList
题目:2.2.3 Partition ListGiven a linked list and a value x, partition it such that all nodes less than x come before nodes greater than or equal to x. You should preserve the original relative order of原创 2015-03-28 11:21:07 · 2045 阅读 · 0 评论 -
Leetcode解题-链表(2.2.2)ReverseLinkedList
题目:2.2.2 Reverse Linked List IIReverse a linked list from position m to n. Do it in-place and in one-pass.For example:Given 1->2->3->4->5->nullptr, m = 2 and n = 4,return 1->4->3->2->5->nullptr.Note:原创 2015-03-28 11:17:21 · 2567 阅读 · 0 评论 -
Leetcode解题-链表(2.2.0)基础类
1 基类的作用在开始练习LeetCode链表部分的习题之前,首先创建好一个Solution基类,其作用就是:Ø 规定好每个子Solution都要实现纯虚函数test做测试;Ø 提供了ListNode结构的定义;Ø create函数创建链表;Ø print打印链表等工具函数;从而方便我们编写完算法函数后进行单元测试。2 代码实现因为我们提供的链表仅是用来完成后面的习题,而不用提供增删改查等操原创 2015-03-28 08:33:09 · 2263 阅读 · 0 评论 -
毕业了,开始新的生活!
转眼间就毕业了,短短的18个月过得真快!因为一直忙于上课找工作,所以好久没发文章了。现在已经重新开始上班一个月了,渐渐安稳了下来。开始适应新生活,也重新开始走自己的学习节奏。希望渐渐能多写一些技术文章,继续学习进步!这篇“回归”的文章就先简要总结一下这一年半的经历吧,也算是给过去的生活画上个句号。1.研究生学习总结读研期间最骄傲的三件事儿就是:读了一所不算很有名但是性价比很高的学校,选了很多很好的课原创 2017-07-25 07:48:07 · 26053 阅读 · 103 评论