leetcode
Dream_Ross
这个作者很懒,什么都没留下…
展开
-
36. Valid Sudoku
Determine if a Sudoku is valid, according to: Sudoku Puzzles - The Rules.The Sudoku board could be partially filled, where empty cells are filled with the character '.'.A partially fille原创 2017-06-27 10:36:31 · 225 阅读 · 0 评论 -
167. Two Sum II - Input array is sorted
Given an array of integers that is already sorted in ascending order, find two numbers such that they add up to a specific target number.The function twoSum should return indices of the two number原创 2017-06-06 09:52:28 · 209 阅读 · 0 评论 -
415. Add Strings
Given two non-negative integers num1 and num2 represented as string, return the sum of num1 and num2.Note:The length of both num1 and num2 is Both num1 and num2 contains only digits 0-原创 2017-06-01 16:19:31 · 163 阅读 · 0 评论 -
459. Repeated Substring Pattern
Given a non-empty string check if it can be constructed by taking a substring of it and appending multiple copies of the substring together. You may assume the given string consists of lowercase Eng原创 2017-06-01 10:34:48 · 255 阅读 · 0 评论 -
374. Guess Number Higher or Lower
We are playing the Guess Game. The game is as follows:I pick a number from 1 to n. You have to guess which number I picked.Every time you guess wrong, I'll tell you whether the number is h原创 2017-06-16 11:46:04 · 222 阅读 · 0 评论 -
205. Isomorphic Strings
Given two strings s and t, determine if they are isomorphic.Two strings are isomorphic if the characters in s can be replaced to get t.All occurrences of a character must be replaced with原创 2017-05-31 16:39:25 · 179 阅读 · 0 评论 -
169. Majority Element
Given an array of size n, find the majority element. The majority element is the element that appears more than ⌊ n/2 ⌋ times.You may assume that the array is non-empty and the majority element原创 2017-06-05 10:12:38 · 182 阅读 · 0 评论 -
Invert a binary tree.
Invert a binary tree. 4 / \ 2 7 / \ / \1 3 6 9to 4 / \ 7 2 / \ / \9 6 3 1code:class Solution {public: TreeNode* invertTree(TreeNo原创 2017-05-31 10:43:40 · 325 阅读 · 0 评论 -
104. Maximum Depth of Binary Tree
max tree depthGiven a binary tree, find its maximum depth.The maximum depth is the number of nodes along the longest path from the root node down to the farthest leaf node.DFSclass Sol原创 2017-05-31 10:13:19 · 184 阅读 · 0 评论 -
27. Remove Element
Given an array and a value, remove all instances of that value in place and return the new length.Do not allocate extra space for another array, you must do this in place with constant memory.原创 2017-05-31 09:44:59 · 155 阅读 · 0 评论 -
堆、栈
下面这篇博客说明了两点,一个是栈空间的大小由编译器决定,一般为几兆左右,在内存中;而堆空间的大小理论上可以达到逻辑地址可以覆盖的内存大小,例如32位的计算机可用堆空间大小可以达到4G; 最近在做一个程序(VC6.0),功能大概有网络通信、数据库、绘图等。测试的时候程序一运行到某个函数就出现此错误,查了很多地方,试了很多解决办法,终于把问题解决了,写个日志提醒一下自己,也希望作为一个转载 2017-05-18 16:24:11 · 165 阅读 · 0 评论 -
136. Single Number
Given an array of integers, every element appears twice except for one. Find that single one.Note:Your algorithm should have a linear runtime complexity. Could you implement it without using ext原创 2017-06-02 09:37:52 · 165 阅读 · 0 评论 -
242. Valid Anagram
Given two strings s and t, write a function to determine if t is an anagram of s.For example,s = "anagram", t = "nagaram", return true.s = "rat", t = "car", return false.Note:You may ass原创 2017-06-02 09:53:31 · 175 阅读 · 0 评论 -
101. Symmetric Tree
Given a binary tree, check whether it is a mirror of itself (ie, symmetric around its center).For example, this binary tree [1,2,2,3,4,4,3] is symmetric: 1 / \ 2 2 / \ / \3 4 4 3原创 2017-06-07 10:12:48 · 234 阅读 · 0 评论 -
416. Partition Equal Subset Sum
Given a non-empty array containing only positive integers, find if the array can be partitioned into two subsets such that the sum of elements in both subsets is equal.Note:Each of the array原创 2017-06-25 12:03:22 · 199 阅读 · 0 评论 -
华为笔试最高分代码问题
题目就不赘述了,下面贴出来两个代码,一个代码ac 10%,另一个则是100%int main(){ int N,M; while(cin>>N>>M){ vector stu(N); int a,b;char c; for(int i=0;i>stu[i]; for(int j=0;j<M;++j){原创 2017-06-23 16:37:59 · 897 阅读 · 0 评论 -
304. Range Sum Query 2D - Immutable
Given a 2D matrix matrix, find the sum of the elements inside the rectangle defined by its upper left corner (row1, col1) and lower right corner (row2, col2).The above rectangle (with the red bo原创 2017-06-22 11:29:00 · 192 阅读 · 0 评论 -
125. Valid Palindrome
Given a string, determine if it is a palindrome, considering only alphanumeric characters and ignoring cases.For example,"A man, a plan, a canal: Panama" is a palindrome."race a car" is not a原创 2017-06-22 11:03:01 · 194 阅读 · 0 评论 -
112. Path Sum
Given a binary tree and a sum, determine if the tree has a root-to-leaf path such that adding up all the values along the path equals the given sum.For example:Given the below binary tree and sum原创 2017-06-09 16:01:50 · 199 阅读 · 0 评论 -
371. Sum of Two Integers
Calculate the sum of two integers a and b, but you are not allowed to use the operator + and -.Example:Given a = 1 and b = 2, return 3.预备知识:整数在计算机中的表示方法(信息存储):有符号数:既包括正数负数零;计算机中表示有原创 2017-06-09 15:05:42 · 179 阅读 · 0 评论 -
慢慢学 动态规划
多做几道题来理解动态规划吧。毕竟代码写出来才能算是真正理解了。A、leetcode 198. House RobberYou are a professional robber planning to rob houses along a street. Each house has a certain amount of money stashed, the only c原创 2017-06-21 09:51:09 · 311 阅读 · 0 评论 -
40. Combination Sum II
Given a collection of candidate numbers (C) and a target number (T), find all unique combinations in C where the candidate numbers sums to T.Each number in C may only be used once in the combina原创 2017-06-20 11:17:31 · 199 阅读 · 0 评论 -
257. Binary Tree Paths
Given a binary tree, return all root-to-leaf paths.For example, given the following binary tree: 1 / \2 3 \ 5All root-to-leaf paths are:["1->2->5", "1->3"]class S原创 2017-06-08 09:50:00 · 203 阅读 · 0 评论 -
190. Reverse Bits
Reverse bits of a given 32 bits unsigned integer.For example, given input 43261596 (represented in binary as 00000010100101000001111010011100), return 964176192 (represented in binary as 001110010原创 2017-06-19 10:04:05 · 221 阅读 · 0 评论 -
回调函数的基本原理和用法
第一次看到回调函数,不知道什么意思,于是搜索了一下。通过函数指针进行函数调用的方法,常用于排序等场景对指针的应用是C语言编程的精髓所在,而回调函数就是C语言里面对函数指针的高级应用。简而言之,回调函数是一个通过函数指针调用的函数。如果你把函数指针(函数的入口地址)传递给另一个函数,当这个函数指针被用来调用它所指向的函数时,我们就说这个函数是回调函数。 为什么要使用回调函数呢?转载 2017-05-18 15:54:20 · 2318 阅读 · 0 评论 -
宏和内联函数
含参数的宏与函数的区别标签: 宏 2014-03-14 18:10 541人阅读 评论(0)收藏举报本文章已收录于:? 宏替换不占运行时间,只占编译时间;而函数调用则占运行时间(分配单元、保留现场、值传递、返回),所以每次执行都要载入所以执行起来比较慢一些。。? 定义宏的时候不要在宏及其参数转载 2017-05-18 15:30:21 · 190 阅读 · 0 评论 -
leetcode 268. Missing Number
Given an array containing n distinct numbers taken from 0, 1, 2, ..., n, find the one that is missing from the array.For example,Given nums = [0, 1, 3] return 2.涉及到位操作:异或code:原创 2017-05-27 17:33:28 · 264 阅读 · 0 评论 -
树遍历的非递归代码
转载请注明出处:http://blog.csdn.net/ns_code/article/details/12977901二叉树是一种非常重要的数据结构,很多其他数据机构都是基于二叉树的基础演变过来的。二叉树有前、中、后三种遍历方式,因为树的本身就是用递归定义的,因此采用递归的方法实现三种遍历,不仅代码简洁且容易理解,但其开销也比较大,而若采用非递归方法实现三种遍历,则要用栈来转载 2017-05-24 17:29:04 · 1026 阅读 · 0 评论 -
如何判断一段程序由C编译程序还是由C++编译程序编译的
如果编译器在编译cpp文件,那么 _cplusplus就会被定义,如果是一个C文件被编译,那么 _STDC_就会被定义,_STDC_是预定义宏,当它被定义后,编译器将按照ANSIC标准来编译C语言程序。所以,可以采用下列程序示例判断:#include#ifdef _cplusplus#define USING_C 0#else#define USING_C 1#endif转载 2017-05-12 17:36:03 · 1600 阅读 · 0 评论 -
main主函数执行完毕后,是否会再执行一段代码?
LINUX中:首先我们先在Linux环境下验证一下atexit函数调用注册函数的顺序:为此写了四个fun函数,并且四个fun函数和main函数各自打印一句话,通过屏幕上的输出显示ulai验证调用顺序:(1)fun函数 (2)main函数 (3)makefile文件转载 2017-05-12 17:27:53 · 1221 阅读 · 0 评论 -
C++中的4中类型转换方式
具体归纳如下:(1)reinterpret_cast该函数将一个类型的指针转换为另一个类型的指针.这种转换不用修改指针变量值存放格式(不改变指针变量值),只需在编译时重新解释指针的类型就可做到.reinterpret_cast 可以将指针值转换为一个整型数,但不能用于非指针类型的转换.例://基本类型指针的类型转换double d=9.2;double* pd =转载 2017-05-11 17:24:36 · 362 阅读 · 0 评论 -
C++宏定义详解
一、#define的基本用法 #define是C语言中提供的宏定义命令,其主要目的是为程序员在编程时提供一定的方便,并能在一定程度上提高程序的运行效率,但学生在学习时往往不能 理解该命令的本质,总是在此处产生一些困惑,在编程时误用该命令,使得程序的运行与预期的目的不一致,或者在读别人写的程序时,把运行结果理解错误,这对 C语言的学习很不利。1 #defi转载 2017-05-11 16:18:46 · 215 阅读 · 0 评论 -
什么是动态规划?动态规划典型例题求解+代码
昨天刷leetcode遇到一道题221. Maximal Square.此题是一道典型的动态规划可以解决的问题。在知乎上两个关于动态规划的回答很赞,链接在此什么是动态规划?动态规划的意义是什么?所以一个问题是该用递推、贪心、搜索还是动态规划,完全是由这个问题本身阶段间状态的转移方式决定的!每个阶段只有一个状态->递推;每个阶段的最优状态都是由上一个阶段的最优状态得到转载 2017-03-16 20:41:57 · 712 阅读 · 0 评论 -
常见的排序算法
今天计划整理一下常见的几种排序算法冒泡法:第p次冒泡,会在剩下的n-p个数字钟找到最小的min值,将其放在剩下的n-p个数字的最前面。我的方法是找剩下中的最小值放到开头,而不是两个相邻值互相交换代码如下:templatevoid maopaosort(vector& a){ comparab tmp; int pos; for(int i=0原创 2017-02-09 13:28:57 · 223 阅读 · 0 评论 -
leetcode: Find All Numbers Disappeared in an Array
Find All Numbers Disappeared in an Array这种题目有点脑筋急转弯的意思。题目要求:Could you do it without extra space and in O(n) runtime? You may assume the returned list does not count as extra space.看到discuss中的一原创 2017-02-14 12:30:06 · 204 阅读 · 0 评论 -
leetcode: Convert Sorted List to Binary Search Tree
这道题一开始我就想错方向了。记得算法与数据结构中有一种数据结构是AVL树,AVL不考虑插入的数字是否排列有序。本题中用到的思想有 快慢指针 递归(涉及到树的操作大多是递归)代码如下:class Solution {public: TreeNode* sortedListToBST(ListNode* head) { if(!head) return NU原创 2017-02-08 20:48:24 · 206 阅读 · 0 评论 -
leetcode: Implement Queue using Stacks
使用satck实现queue我使用的是 单向链表 实现的queue.考察的是基本的数据结构的实现。为了实现pop 和push 操作,需要设计两个指针(我代码中成了首位两个节点),一个只想第一个元素,另一个只想最后一个元素,以便快速实现pop和push操作。结构体Node中的默认构造函数,也算是一个知识点吧。同一段代码,中午提交没通过,晚上一点没改再次提交竟然通过了。。。原创 2017-02-08 18:52:14 · 180 阅读 · 0 评论 -
Bit Manipulation
位操作 Bit ManipulationGiven an integer, write an algorithm to convert it to hexadecimal. For negative integer, two’s complement method is used.Note:All letters in hexadecimal (a-f) mus原创 2017-05-25 10:47:06 · 380 阅读 · 0 评论 -
leetcode中的递归调用总结
只是总结我在刷leetcode过程中遇到的使用递归来解决的问题437. Path Sum IIIYou are given a binary tree in which each node contains an integer value.Find the number of paths that sum to a given value.The pa原创 2017-05-25 10:02:31 · 803 阅读 · 0 评论 -
leetcode 77. Combinations
题目如下:Given two integers n and k, return all possible combinations of k numbers out of 1 ... n.For example,If n = 4 and k = 2, a solution is:[ [2,4], [3,4], [2,3], [1,2], [1,3原创 2017-05-24 15:31:14 · 170 阅读 · 0 评论