algorithm
nicolelili1
这个作者很懒,什么都没留下…
展开
-
排序算法
一、选择排序1、#include <iostream>#include <algorithm>#include <windows.h>using namespace std;void selectionSort(int arry[], int n){ for (int i = 0; i < n; i++){ //寻找[i,n)...转载 2019-12-19 18:20:35 · 220 阅读 · 0 评论 -
LeetCode 279. Perfect Squares
Given a positive integer n, find the least number of perfect square numbers (for example, 1, 4, 9, 16, ...) which sum to n.Example 1:Input: n = 12Output: 3 Explanation: 12 = 4 + 4 + 4.Example...转载 2019-04-12 15:30:34 · 114 阅读 · 0 评论 -
Handler源码讲解
1、2、3、4、handler.send()或者handler.post()的方案,是发送消息,并添加到消息队列里面来。在app启动的时候,主线程的loop已经在滚动了,滚动的时候带着messagequeue不停地轮询,当通过handler发送消息的时候,会将消息放入已经在轮询的消息队列中去。然后在messagequeue里面,轮询调用next(),调用...转载 2019-04-12 15:47:42 · 88 阅读 · 0 评论 -
LeetCode 347. Top K Frequent Elements
Given a non-empty array of integers, return the k most frequent elements.Example 1:Input: nums = [1,1,1,2,2,3], k = 2Output: [1,2]Example 2:Input: nums = [1], k = 1Output: [1]Note: Yo...转载 2019-04-26 23:40:30 · 163 阅读 · 0 评论 -
LeetCode 23 Merge k Sorted Lists
Merge k sorted linked lists and return it as one sorted list. Analyze and describe its complexity.Example:Input:[ 1->4->5, 1->3->4, 2->6]Output: 1->1->2->3->4-...转载 2019-04-27 00:23:36 · 105 阅读 · 0 评论 -
二分查找法BinarySearch
1、二分查找法:对于一个有序数列,刚开始查找数组中间这个数是不是需要的数字,如果是的话,将其索引返回。否则,如果目标对象比中间的数小,从其左边的数组开始查找。否则,从右边的数组开始查找。2、//[0....n] public static int BinarySearch(int[] arry,int n,int target){ int l=0,r=n;...转载 2019-04-12 15:40:23 · 193 阅读 · 0 评论 -
LeetCode、283. Move Zeroes
Given an array nums, write a function to move all 0's to the end of it while maintaining the relative order of the non-zero elements.Example:Input: [0,1,0,3,12]Output: [1,3,12,0,0]Note:You m...转载 2019-04-12 15:40:13 · 74 阅读 · 0 评论 -
LeetCode 26. Remove Duplicates from Sorted Array
Given a sorted array nums, remove the duplicates in-place such that each element appear only once and return the new length.Do not allocate extra space for another array, you must do this by modifyi...转载 2019-04-12 15:39:55 · 64 阅读 · 0 评论 -
LeetCode 226. Invert Binary Tree(反转二叉树)
Invert a binary tree.Example:Input: 4 / \ 2 7 / \ / \1 3 6 9Output: 4 / \ 7 2 / \ / \9 6 3 1Trivia:This problem was inspired by this origin...转载 2019-04-12 15:47:31 · 80 阅读 · 0 评论 -
LeetCode 100. Same Tree(比较两个二叉树是否相同)
Given two binary trees, write a function to check if they are the same or not.Two binary trees are considered the same if they are structurally identical and the nodes have the same value.Example ...转载 2019-04-12 15:47:20 · 122 阅读 · 0 评论 -
LeetCode 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...转载 2019-04-12 16:00:52 · 157 阅读 · 0 评论 -
LeetCode 222. Count Complete Tree Nodes(求完全二叉树节点的个数)
Given a complete binary tree, count the number of nodes.Note: Definition of a complete binary tree from Wikipedia:In a complete binary tree every level, except possibly the last, is completely fi...转载 2019-04-12 16:00:42 · 121 阅读 · 0 评论 -
LeetCode 110. Balanced Binary Tree(是否是平衡二叉树)
Given a binary tree, determine if it is height-balanced.For this problem, a height-balanced binary tree is defined as:a binary tree in which the depth of the two subtrees of every node never diff...转载 2019-04-12 16:00:30 · 99 阅读 · 0 评论 -
LeetCode、80. Remove Duplicates from Sorted Array II
Given a sorted array nums, remove the duplicates in-place such that duplicates appeared at mosttwice and return the new length.Do not allocate extra space for another array, you must do this by mod...转载 2019-04-12 15:39:46 · 57 阅读 · 0 评论 -
LeetCode 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.Note:A leaf is a node with no children.Example:...转载 2019-04-12 16:00:19 · 75 阅读 · 0 评论 -
LeetCode 404. Sum of Left Leaves
Find the sum of all left leaves in a given binary tree.Example: 3 / \ 9 20 / \ 15 7There are two left leaves in the binary tree, with values 9 and 15 respectively. Return 24....转载 2019-04-12 16:00:07 · 77 阅读 · 0 评论 -
LeetCode 75. Sort Colors
Given an array with n objects colored red, white or blue, sort them in-placeso that objects of the same color are adjacent, with the colors in the order red, white and blue.Here, we will use the in...转载 2019-04-12 15:39:39 · 67 阅读 · 0 评论 -
LeetCode 88. Merge Sorted Array
Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array.Note:The number of elements initialized in nums1 and nums2 are m and n respectively. You may assume tha...转载 2019-04-12 15:39:29 · 60 阅读 · 0 评论 -
LeetCode 257. Binary Tree Paths
Given a binary tree, return all root-to-leaf paths.Note:A leaf is a node with no children.Example:Input: 1 / \2 3 \ 5Output: ["1->2->5", "1->3"]Explanation: All roo...转载 2019-04-12 15:59:59 · 70 阅读 · 0 评论 -
LeetCode 113. Path Sum II
Given a binary tree and a sum, find all root-to-leaf paths where each path's sum equals the given sum.Note:A leaf is a node with no children.Example:Given the below binary tree and sum = 22,...转载 2019-04-12 15:59:48 · 76 阅读 · 0 评论 -
LeetCode 129. Sum Root to Leaf Numbers
Given a binary tree containing digits from 0-9 only, each root-to-leaf path could represent a number.An example is the root-to-leaf path 1->2->3 which represents the number 123.Find the tota...转载 2019-04-12 16:03:33 · 107 阅读 · 0 评论 -
LeetCode 215. Kth Largest Element in an Array
Find the kth largest element in an unsorted array. Note that it is the kth largest element in the sorted order, not the kth distinct element.Example 1:Input: [3,2,1,5,6,4] and k = 2 Output: 5E...转载 2019-04-22 17:08:38 · 143 阅读 · 0 评论 -
LeetCode 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 numbers ...转载 2019-04-12 15:39:20 · 73 阅读 · 0 评论 -
Leet Code 、125. Valid Palindrome
Given a string, determine if it is a palindrome, considering only alphanumeric characters and ignoring cases.Note:For the purpose of this problem, we define empty string as valid palindrome.Examp...转载 2019-04-12 15:39:09 · 93 阅读 · 0 评论 -
LeetCoude 344. Reverse String
Write a function that reverses a string. The input string is given as an array of characters char[].Do not allocate extra space for another array, you must do this by modifying the input arrayin-pl...转载 2019-04-12 15:50:53 · 84 阅读 · 0 评论 -
LeetCode 17. Letter Combinations of a Phone Number
Given a string containing digits from 2-9 inclusive, return all possible letter combinations that the number could represent.A mapping of digit to letters (just like on the telephone buttons) is giv...转载 2019-04-12 16:03:22 · 98 阅读 · 0 评论 -
回溯法
递归调用结束之后,总是会返回上一层继续调用。每一层的递归调用,都是如此,要逐步地返回,直到根节点的那次递归调用的所有可能尝试完成,整个的递归调用才结。也正是因为如此,我们这种递归调用来寻找答案的过程通常也被称之为回溯。也就是说沿着一条路径寻找答案,一旦找到答案的话,或者也有可能一旦没有找到答案的话,不管怎么样,一旦递归到底的话,就回去,继续去寻找,依次类推,这个过程就叫...转载 2019-04-12 16:02:21 · 147 阅读 · 0 评论 -
LeetCode93. Restore IP Addresses
Given a string containing only digits, restore it by returning all possible valid IP address combinations.Example:Input: "25525511135"Output: ["255.255.11.135", "255.255.111.35"]...转载 2019-04-12 15:54:41 · 84 阅读 · 0 评论 -
LeetCode 131、Palindrome Partitioning
Given a string s, partition s such that every substring of the partition is a palindrome.Return all possible palindrome partitioning of s.Example:Input:"aab"Output:[ ["aa","b"], ["a","a"...转载 2019-04-12 15:54:31 · 107 阅读 · 0 评论 -
LeetCode 345. Reverse Vowels of a String
Write a function that takes a string as input and reverse only the vowels of a string.Example 1:Input: "hello"Output: "holle"Example 2:Input: "leetcode"Output: "leotcede"Note:The vowels...转载 2019-04-12 15:38:57 · 71 阅读 · 0 评论 -
LeetCode 11. Container With Most Water
Given n non-negative integers a1, a2, ..., an, where each represents a point at coordinate (i, ai). n vertical lines are drawn such that the two endpoints of line i is at (i, ai) and (i, 0). Find two...转载 2019-04-12 15:38:47 · 66 阅读 · 0 评论 -
LeetCode 209. Minimum Size Subarray Sum
Given an array of n positive integers and a positive integer s, find the minimal length of a contiguous subarray of which the sum ≥ s. If there isn't one, return 0 instead.Example:Input: s = 7, ...转载 2019-04-12 15:38:38 · 59 阅读 · 0 评论 -
LeetCode 46. Permutations
Given a collection of distinct integers, return all possible permutations.Example:Input: [1,2,3]Output:[ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1]]注:permutations:...转载 2019-04-12 15:31:34 · 124 阅读 · 0 评论 -
LeetCode 47. Permutations II(元素的去重全排列)
Given a collection of numbers that might contain duplicates, return all possible unique permutations.Example:Input: [1,1,2]Output:[ [1,1,2], [1,2,1], [2,1,1]]初始化集合或者数组时,指定初始大小可以减少...转载 2019-04-28 19:10:56 · 408 阅读 · 0 评论 -
LeetCode 77. Combinations
Given two integers n and k, return all possible combinations of k numbers out of 1 ... n.Example:Input:n = 4, k = 2Output:[ [2,4], [3,4], [2,3], [1,2], [1,3], [1,4],]...转载 2019-04-12 16:02:14 · 98 阅读 · 0 评论 -
回溯法解决组合问题的优化
当n=4,k=2时的递归树,在这棵树中,明显存在着一个地方是没有必要去走的,就是在最后取n=4这个地方。在[1,2,3,4]中取2个数,我们根本就没有必要尝试去取4,这是因为尝试取4之后,无法再取任意一个数了。在现在的算法中,还是尝试了取4,取完4后,发现第二个数字取不了了,所以只好再返回回去。这一部分wan'q可以把它剪掉,换句话说,只需要尝试取1、取2、取3就好了。在这个图中,看起来好像只优化...转载 2019-04-12 16:01:58 · 1069 阅读 · 0 评论 -
LeetCode 39. Combination Sum
Given a set of candidate numbers (candidates) (without duplicates) and a target number (target), find all unique combinations in candidateswhere the candidate numbers sums to target.The same repeat...转载 2019-04-28 23:34:10 · 97 阅读 · 0 评论 -
LeetCode 40、Combination SumII
Given a collection of candidate numbers (candidates) and a target number (target), find all unique combinations in candidateswhere the candidate numbers sums to target.Each number in candidatesmay...转载 2019-04-29 00:27:25 · 108 阅读 · 0 评论 -
LeetCode 216、Combination Sum III
Find all possible combinations of k numbers that add up to a number n, given that only numbers from 1 to 9 can be used and each combination should be a unique set of numbers.Note:All numbers wi...转载 2019-04-29 01:08:22 · 103 阅读 · 0 评论 -
LeetCode 78、Subsets
Given a set of distinct integers, nums, return all possible subsets (the power set).Note: The solution set must not contain duplicate subsets.Example:Input: nums = [1,2,3]Output:[ [3], [1...转载 2019-04-29 01:18:19 · 91 阅读 · 0 评论