Given a string s1, we may represent it as a binary tree by partitioning it to two non-empty substrings recursively.Below is one possible representation of s1 = "great": great/ gr eat/ \ / g r e at/ a t
To scramble the string, we may choose any non-leaf node and swap its two children.For example, if we choose the node "gr" and swap its two children, it produces a scr...
题目来源: https://leetcode.com/problems/sudoku-solver/ 题意分析: 这次的题目就是上一题的进化版。填好一个数独。 题目思路: 这题直接用dfs暴力解决。把“*”用(1-9)直接填就行。时间复杂度比较高。要注意的是,题目要求没有返回值,所以要另外写一个函数用来判断填数之后是否满足可以填好。 代码(python): 1class Solution(object):2def isValue(self,board,x,y):3#列符合 4for i in range(9):5if i != x and...
Given an array S of n integers, are there elements a, b, c, and d in S such that a + b + c + d = target? Find all unique quadruplets in the array which gives the sum of target.
Note:
Elements in a quadruplet (a,b,c,d) must be in non-descending order. (ie, a ≤ b ≤ c ≤ d)
The solution set must not contain duplicate quadruplets.
For example, given array S = {1 0 -1 0 -2 2}, and target = 0.
...
?这是啥算法题。。逐个判断写个循环即可class Solution:def fizzBuzz(self, n: int) -> List[str]:result = []for i in range(1,n+1):if i % 3 == 0 and i % 5 == 0 :result.append(‘FizzBuzz‘)elif i%3==0:result.append(‘Fizz‘)elif i%5==0:result.append(‘Buzz‘)else:result.append(str(i))return result 原文:https://www.cnblogs.com/cbachen/p/14867481.html
84. 柱状图中最大的矩形题目来源:力扣(LeetCode)https://leetcode-cn.com/problems/largest-rectangle-in-histogram/题目给定 n 个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为 1 。求在该柱状图中,能够勾勒出来的矩形的最大面积。以上是柱状图的示例,其中每个柱子的宽度为 1,给定的高度为 [2,1,5,6,2,3]。图中阴影部分为所能勾勒出的最大矩形面积,其面积为 10 个单位。示例:输入: [2,1,5,6,2,3]...
#很简单,利用strip函数去除左右两边的空格,然后用split函数分割成列表class Solution(object): def lengthOfLastWord(self, s): """ :type s: str :rtype: int """ if s==None:return 0 slist=s.strip().split(‘ ‘) return len(slist[-1])原文:http://www.cnblogs.com/kwangeline/p/6016917.html
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 always exist in the array. python code:class Solution: # @param {integer[]} nums # @return {integer} def majorityElement(self, nums): b={} for eachnum in num...
题目来源: https://leetcode.com/problems/powx-n/ 题意分析: 实现一个整型的幂运算。 题目思路: 幂运算可以利用二分的方法来做。也就是x^n = x ^ (n /2) * x ^(n / 2) (n %2 == 0)或者x^n = x ^ (n /2) * x ^(n / 2) * x(n %2 == 1)。要注意的时候,当n < 0 的时候,x ^ n =1 / (x ^(-n))。 代码(python):class Solution(object):def myPow(self, x, n):""":type x: float:type n: int:rtype: float"""if n < 0:...
题目来源: https://leetcode.com/problems/trapping-rain-water/ 题意分析: 输入一组数组,代表一个宽度为1的高度地图。问,这个地图在雨后可以收集多少水。例如,输入一个数组[0,1,0,2,1,0,1,3,2,1,2,1],返回的是6.如图所示: 题目思路: 这道题目虽然说是hard难度的题目,但是其实不是很难。不难发现,水都是从最高那个数起和第二高数之间。那么这题可以分成两部。①找到数组的最大值。②计算最大值左边和右边分别可...
题目:给定一个非负整数 numRows,生成杨辉三角的前 numRows 行。思路:本题较简单程序:class Solution: def generate(self, numRows: int) -> List[List[int]]: result = [] if numRows <= 0: return result for index1 in range(1, numRows + 1): data = [] if index1 == 1: data.append(1) elif index1 == 2: data.append...
98. 验证二叉搜索树题目来源:https://leetcode-cn.com/problems/validate-binary-search-tree题目给定一个二叉树,判断其是否是一个有效的二叉搜索树。假设一个二叉搜索树具有如下特征:节点的左子树只包含小于当前节点的数。
节点的右子树只包含大于当前节点的数。
所有左子树和右子树自身必须也是二叉搜索树。示例 1:输入:2/ 1 3
输出: true
示例 2:输入:5/ 1 4/ 3 6
输出: false
解释: 输入为: [5,1,4,null,null...
题目:假设按照升序排序的数组在预先未知的某个点上进行了旋转。 ( 例如,数组 [0,1,2,4,5,6,7] 可能变为 [4,5,6,7,0,1,2] )。 请找出其中最小的元素。 注意数组中可能存在重复的元素。 说明:这道题是 寻找旋转排序数组中的最小值 的延伸题目。允许重复会影响算法的时间复杂度吗?会如何影响,为什么?思路:仍然使用二分法,考虑到会存在重复元素的情况,因此当判断到有重复数字时(nums[middle] == nums[tail])时,使用tail...
# -*- coding: utf8 -*-‘‘‘https://oj.leetcode.com/problems/median-of-two-sorted-arrays/There are two sorted arrays A and B of size m and n respectively. Find the median of the two sorted arrays.The overall run time complexity should be O(log (m+n)).===Comments by Dabay===先计算中位数在合并后数组中的什么坐标为medium_pos。同时考虑到,合并后数组的元素总数是奇数偶数的不同情况,用一个变量last来记录寻...
原题地址:https://oj.leetcode.com/problems/text-justification/题意:Given an array of words and a length L, format the text such
that each line has exactly L characters and is fully (left
and right) justified.You should pack your words in a greedy approach; that is, pack as many words
as you can in each line. Pad extra spaces ‘ ‘ when
necessary so that each line has exactly L characters.Extr...
Problem:
Given an array S of n integers, find three integers in S such that the sum is closest to a given number, target. Return the sum of the three integers. You may assume that each input would haveexactly one solution. For example, given array S = {-1 2 1 -4}, and target = 1.The sum that is closest to the target is 2. (-1 + 2 + 1 = 2).Solution:此题与15题基本类似,甚至更简单一些,只需要比较和...