数据结构与算法
文章平均质量分 60
Inequality-Sign
这个作者很懒,什么都没留下…
展开
-
最大子序列最佳解法
public int maxSubsequenceSum(int[] arr){ int nowSum = 0; int max = 0; for(int num : arr){ nowSum += num; if(nowSum > max ){ max = nowSum; } if(no原创 2017-10-29 20:00:34 · 193 阅读 · 0 评论 -
最大公因数-欧几里得算法
public int gcd(int m, int n){ int rem; while(n > 0){ rem = m % n; m = n; n= rem; } return m;}原创 2017-10-29 20:28:08 · 354 阅读 · 0 评论 -
LeetCode 31. Next Permutation
Implement next permutation, which rearranges numbers into the lexicographically next greater permutation of numbers.If such arrangement is not possible, it must rearrange it as the lowest possible orde原创 2017-12-08 12:52:25 · 132 阅读 · 0 评论 -
storm ack机制
1、先看一下数学中的异或 异或xor是一个数学运算符。它应用于逻辑运算。异或符号为“^”。 异或也叫半加运算,其运算法则相当于不带进位的二进制加法:二进制下用1表示真,0表示假,则异或的运算法则为:0异或0=0,1异或0=1,0异或1=1,1异或1=0(同为0,异为1), 既然相同的对象XOR操作,结果是0,那么有这样一个公式, A xor B…xor B xor A = 0,其中每转载 2017-12-09 15:37:39 · 237 阅读 · 0 评论 -
17. Letter Combinations of a Phone Number
运用到了队列的思想,但实际代码直接用list实现了public List<String> letterCombinations(String digits) { List<String> resultList = new ArrayList<String>(); //初始化号码对应的英文字母 String[] phoneDic = new String原创 2017-12-01 22:59:45 · 143 阅读 · 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 3But the原创 2017-12-20 00:31:56 · 149 阅读 · 0 评论 -
22. Generate Parentheses
Given n pairs of parentheses, write a function to generate all combinations of well-formed parentheses.For example, given n = 3, a solution set is:[ “((()))”, “(()())”, “(())()”, “()(())”,原创 2017-12-03 16:21:11 · 119 阅读 · 0 评论 -
归并排序java实现
//mid是left的最后一个元素,将两个有序序列排序整理 public void sSrot(List<Integer> list, int left, int mid, int right) { List<Integer> tmpList = new ArrayList<Integer>(); int l = left; int r = m原创 2017-11-25 13:04:37 · 171 阅读 · 0 评论 -
LeetCode-11~Container with Most Water
传统的双指针解法仍然存在一些重复计算的问题,因此我改进了此方法多加入了一重判断,效率上提高了不少public int maxArea2(int[] height) { int dFlag = 0;//1表示前一次左进,2表示右退 int tmp_left = 0;//上次经过计算的水桶的左值 int tmp_right = 0;//上次经过计算的水桶的原创 2017-11-25 19:05:18 · 134 阅读 · 0 评论 -
Leetcode 39. Combination Sum
Given a set of candidate numbers (C) (without duplicates) and a target number (T), find all unique combinations in C where the candidate numbers sums to T.The same repeated number may be chosen from C原创 2017-12-14 00:41:01 · 201 阅读 · 0 评论 -
LeetCode 120. Triangle
Given a triangle, find the minimum path sum from top to bottom. Each step you may move to adjacent numbers on the row below.For example, given the following triangle[ [2], [3,4], [6,5,7],原创 2017-12-23 00:41:27 · 140 阅读 · 0 评论 -
LeetCode 41. First Missing Positive
Given an unsorted integer array, find the first missing positive integer.For example, Given [1,2,0] return 3, and [3,4,-1,1] return 2.Your algorithm should run in O(n) time and uses constant space.难点原创 2017-12-15 01:33:20 · 136 阅读 · 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.For example, given n = 12, return 3 because 12 = 4 + 4 + 4; given n = 13, return原创 2017-12-24 02:19:45 · 176 阅读 · 0 评论 -
LeetCode 15. 3Sum
Given an array S of n integers, are there elements a, b, c in S such that a + b + c = 0? Find all unique triplets in the array which gives the sum of zero.Note: The solution set must not contain duplic原创 2017-11-27 20:32:38 · 124 阅读 · 0 评论 -
LeetCode 102. Binary Tree Level Order Traversal
Given a binary tree, return the level order traversal of its nodes’ values. (ie, from left to right, level by level).For example: Given binary tree [3,9,20,null,null,15,7], 3 / \ 9 20 /原创 2017-12-25 01:54:18 · 156 阅读 · 0 评论 -
java 将数组转化为 二叉树
class TreeNode { int val; TreeNode left; TreeNode right; TreeNode(int x) { val = x; } }private TreeNode createBinaryTreeByArray(Integer []array,int index)原创 2017-12-25 01:57:26 · 7862 阅读 · 2 评论 -
LeetCode 42. Trapping Rain Water
Given n non-negative integers representing an elevation map where the width of each bar is 1, compute how much water it is able to trap after raining.For example, Given [0,1,0,2,1,0,1,3,2,1,2,1], ret原创 2017-12-16 00:57:37 · 139 阅读 · 0 评论 -
LeetCode 29. Divide Two Integers
Divide two integers without using multiplication, division and mod operator.If it is overflow, return MAX_INT.没有使用移位,而是采取了小学竖式计算的原理 public int divide(int dividend, int divisor) { long dividend_l原创 2017-12-07 17:00:56 · 126 阅读 · 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 1:Inp原创 2018-01-01 23:45:37 · 138 阅读 · 0 评论 -
LeetCode 104. Maximum Depth of Binary Tree
Given 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.计算二叉树的最大深度,没什么好说的,记录一下 public int m原创 2018-01-02 16:46:48 · 130 阅读 · 0 评论 -
LeetCode 48. Rotate Image
You are given an n x n 2D matrix representing an image.Rotate the image by 90 degrees (clockwise).Note: You have to rotate the image in-place, which means you have to modify the input 2D matrix direct原创 2018-01-02 21:13:04 · 147 阅读 · 0 评论 -
LeetCode 54. Spiral Matrix
Given a matrix of m x n elements (m rows, n columns), return all elements of the matrix in spiral order.For example, Given the following matrix:[ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ]]You should原创 2018-01-03 00:43:27 · 151 阅读 · 0 评论 -
LeetCode 46. Permutations
Given a collection of distinct numbers, return all possible permutations.For example, [1,2,3] have the following permutations:[ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1]]给出数列列原创 2017-12-28 01:53:42 · 163 阅读 · 0 评论 -
LeetCode 67. Add Binary
Given two binary strings, return their sum (also a binary string).For example, a = “11” b = “1” Return “100”.初始化tmp 每一位和tmp的值相加 tmp / 2为下一轮的tmp tmp % 2为该位应该填上的数 public String addBinary(String a,原创 2018-01-03 16:15:38 · 143 阅读 · 0 评论 -
LeetCode 91. Decode Ways
A message containing letters from A-Z is being encoded to numbers using the following mapping:'A' -> 1'B' -> 2...'Z' -> 26Given an encoded message containing digits, determine the total number of w原创 2018-01-03 19:30:43 · 218 阅读 · 0 评论 -
LeetCode 56. Merge Intervals
Given a collection of intervals, merge all overlapping intervals.For example, Given [1,3],[2,6],[8,10],[15,18], return [1,6],[8,10],[15,18].public List<Interval> merge(List<Interval> intervals) {原创 2018-01-04 09:42:22 · 151 阅读 · 0 评论 -
LeetCode 106. Construct Binary Tree from Inorder and Postorder Traversal
Given inorder and postorder traversal of a tree, construct the binary tree.Note: You may assume that duplicates do not exist in the tree.For example, giveninorder = [9,3,15,20,7]postorder = [9,15,7,2原创 2018-03-07 16:45:06 · 230 阅读 · 0 评论 -
LeetCode 103. Binary Tree Zigzag Level Order Traversal
Given a binary tree, return the zigzag level order traversal of its nodes’ values. (ie, from left to right, then right to left for the next level and alternate between).For example: Given binary tree原创 2018-03-07 22:05:48 · 103 阅读 · 0 评论 -
LeetCode 139. Word Break
Given a non-empty string s and a dictionary wordDict containing a list of non-empty words, determine if s can be segmented into a space-separated sequence of one or more dictionary words. You may assu...原创 2018-03-08 00:09:25 · 123 阅读 · 0 评论 -
LeetCode 140. Word Break II
Given a non-empty string s and a dictionary wordDict containing a list of non-empty words, add spaces in s to construct a sentence where each word is a valid dictionary word. You may assume the dictio...原创 2018-03-08 18:20:04 · 109 阅读 · 0 评论 -
LeetCode 682. Baseball Game
You’re now a baseball game point recorder.Given a list of strings, each string can be one of the 4 following types:Integer (one round’s score): Directly represents the number of points you get in ...原创 2018-03-15 14:07:53 · 178 阅读 · 0 评论 -
LeetCode 109. Convert Sorted List to Binary Search Tree
Given a singly linked list where elements are sorted in ascending order, convert it to a height balanced BST.For this problem, a height-balanced binary tree is defined as a binary tree in which the dep原创 2018-03-09 00:21:44 · 101 阅读 · 0 评论 -
LeetCode 693. Binary Number with Alternating Bits
Given a positive integer, check whether it has alternating bits: namely, if two adjacent bits will always have different values.Example 1:Input: 5Output: TrueExplanation:The binary representati...原创 2018-03-15 15:21:22 · 162 阅读 · 0 评论 -
LeetCode 563. Binary Tree Tilt
Given a binary tree, return the tilt of the whole tree.The tilt of a tree node is defined as the absolute difference between the sum of all left subtree node values and the sum of all right subtree ...原创 2018-03-15 23:40:00 · 115 阅读 · 0 评论 -
LeetCode 596. Classes More Than 5 Students
There is a table courses with columns: student and classPlease list out all classes which have more than or equal to 5 students.For example, the table:+---------+------------+| student | clas...原创 2018-03-16 00:54:11 · 177 阅读 · 0 评论 -
492. Construct the Rectangle
For a web developer, it is very important to know how to design a web page’s size. So, given a specific rectangular web page’s area, your job by now is to design a rectangular web page, whose length L...原创 2018-03-16 01:34:28 · 104 阅读 · 0 评论 -
LeetCode 134. Gas Station
There are N gas stations along a circular route, where the amount of gas at station i is gas[i].You have a car with an unlimited gas tank and it costs cost[i] of gas to travel from station i to its ...原创 2018-03-10 01:07:36 · 160 阅读 · 0 评论 -
LeetCode 69. Sqrt(x)
Implement int sqrt(int x).Compute and return the square root of x.x is guaranteed to be a non-negative integer.Example 1:Input: 4Output: 2Example 2:Input: 8Output: 2Explanation: The...原创 2018-03-11 00:32:55 · 104 阅读 · 0 评论 -
LeetCode 83. Remove Duplicates from Sorted List
Given a sorted linked list, delete all duplicates such that each element appear only once.For example, Given 1->1->2, return 1->2. Given 1->1->2->3->3, return 1->2->3....原创 2018-03-11 00:43:44 · 86 阅读 · 0 评论 -
606. Construct String from Binary Tree
You need to construct a string consists of parenthesis and integers from a binary tree with the preorder traversing way.The null node needs to be represented by empty parenthesis pair “()”. And you ...原创 2018-03-17 10:09:35 · 128 阅读 · 0 评论