- 博客(12)
- 资源 (2)
- 收藏
- 关注
原创 leetcode_树_相关内容
1.leetcode种对于树的定义如下:/** * Definition for binary tree * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {}
2015-04-30 21:10:41 406
原创 leetcode_2_two+sum
只能说hash_table的巧妙性:这是自己在完全不用hash_table的方法下完成的,实在是太麻烦了:class Solution {public: vector twoSum(vector& nums, int target) { vector temp(nums); sort(nums.begin(),nums.end()); int len
2015-04-28 15:44:45 403
原创 leetcode_33_34_二分搜素
传送门:https://leetcode.com/problems/search-in-rotated-sorted-array/思路:这里首先先提供一下自己一开始写的代码:class Solution {public: int binary_search(vector& vec,int begin,int end,int target) { while(begin<=end
2015-04-24 21:01:20 622
原创 leetcode_permutaionu全排列集合_31_46_47_60
这是leetcode上一个很有意思的排列集合在此之前我想先引用leetcode上discuss里一位仁兄提出的问题:use the function "STL next_permutation" to solve this problem. good or BAD???其中最高票的回答是:Definitely raise this concern to your int
2015-04-21 14:56:15 448
原创 leetcode_77_combiantion_78_subsets_90_subsets2
真是有种 “x了狗了”的感觉,DFS这里总是充满了各种各样的问题最后写的代码可读性和复杂度都差得厉害,虽然AC:class Solution {public: void solve(int index,int cur,vector &res,vector >&ans,vector& num,int k) { if(index==k) { ans.push_back(r
2015-04-19 09:46:27 552
原创 leetcode_38_39_combiantionsum_1+2
传送门:https://leetcode.com/problems/combination-sum/https://leetcode.com/problems/combination-sum-ii/思路:用的是DFS递归搜索,如果有满足条件,则加入集合,否则弹出。pop_back()函数一开始写错了。STL这里太容易混淆了。第一题AC代码:class S
2015-04-19 08:36:30 576
原创 链表
写这篇文章的目的是因为在刷OJ的过程中发现自己在数据结构基础方面的知识有所欠缺,用STL用的太熟练了。无论是出于提高编程能力、提高对数据结构的理解,还是应付面试题的需要,都需要系统化这一知识点。所以结合《数据结构与算法分析—C语言描述》、浙大的MOOC公开课,写了这样一个系列。在这一过程中我会更多的使用C/C++语言,而非ADT。链表是最常见的线性结构,包括物理链表(物理上
2015-04-14 21:31:39 496
原创 vector详解
立此留念。本篇文章来源于《c++ primer》第四版第四章《容器和算法》和http://www.cplusplus.com/reference/vector/vector/ 上的有关英文文档内容vector是一个类似于数组的容器,可以储存连续的空间。区别在于:compared to arrays, vectors consume more memory in exchange for t
2015-04-12 10:47:39 388
原创 leetcode_135_Candy_贪心
class Solution {public: bool check(vector &rate,vector &num) { int length=rate.size(); for(int i=1;i<length-1;i++) { if(rate[i]>rate[i-1] && rate[i]>rate[i
2015-04-09 17:40:43 386
原创 leetcode_21_merge_sortedlist
传送门:解题思路:按照依次比较大小的方式来进行计算,当有一个为空后,讲另一个完全接到新的数组上。第一次提示runtime error时给出的测试用例是{},{},所以多添加了一句if(!l1 && !l2),完全没必要,应该是因为自己最后返回的是cur而不是head的缘故图书馆闭关,明天试一下如果不是用指针而是用值会怎么样。AC代码:/** * Definition for
2015-04-07 21:45:07 388
原创 leetcode_37_sudokusolver
传送门:https://leetcode.com/problems/sudoku-solver/问题分析:是leetcode_36的进一步表示。思路是用深度优先来求解:如果这一点不是空白,则进行下一组操作。如果这一点是空白,则进行九次循环,如果某一次循环满足check的条件并且能够满足solve(cur+1),即之后的所有情况,直到cur==81为止,则return true;换言
2015-04-07 21:04:02 492
原创 leetcode_36_validsudoku
传送门:https://leetcode.com/problems/valid-sudoku/问题解析:这里的valid并不要求一定能解出来,只要满足每一横行、每一纵行、每一个方格内不存在相等的元素就可以。单元方格很明显是以3为单位的,求出商和余数后遍历九次就可以。AC代码:class Solution{public: bool check(int x,int y,vec
2015-04-07 20:47:26 446
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人