摘要: 问题:给定一个由非负整数组成的数组,数组元素代表柱体高度,求该数组所代表的这些柱体能容纳的水的体积 示例: 输入:[0,1,0,2,1,0,1,3,2,1,2,1] 输出:6 解决思路:遍历数组,使用变量保存当前最大值和位置。如果遍历到的元素不小于该值,(并且且如果两者位置间隔超过1,则计算两者之间 阅读全文
posted @ 2019-05-08 11:28 秦qin 阅读(95) 评论(0) 推荐(0) 编辑
摘要: 问题:给定一个无序数组,输出其中不存在的最小正整数 示例: 输入:[1,3,4] 输出:2 输入:[2,-1,1,4,5,4] 输出:3 输入:[6,5,4,7,8] 输出:1 解决思路:遍历数组中的元素i,如果为正整数且不大于数组的长度,则将其调整到 i - 1的位置处。之后,对调整后的数组进行遍 阅读全文
posted @ 2019-05-07 12:54 秦qin 阅读(79) 评论(0) 推荐(0) 编辑
摘要: 问题:给定一个无重复的数组candidates和一个目标值target,根据数组中的元素输出和为目标值的所有可能组合,数组中的每个元素不能多次使用,输出结果不能有重复的组合。数组中的数和target均为正数 示例: 输入:candidates = [1,2,3,5,6] target = 6 输出: 阅读全文
posted @ 2019-05-06 11:23 秦qin 阅读(74) 评论(0) 推荐(0) 编辑
摘要: 问题:给定一个无重复的数组candidates和一个目标值target,根据数组中的元素输出和为目标值的所有可能组合,数组中的每个元素可以多次使用,输出结果不能有重复的组合 示例: 输入:candidates = [2,3,6,8] target = 8 输出:[[2,2,2,2],[2,3,3], 阅读全文
posted @ 2019-05-05 10:20 秦qin 阅读(65) 评论(0) 推荐(0) 编辑
摘要: 问题:给定一个9*9的二维数组,数组元素为1~9的字符串,“.”代表该位置为空,将“.”替换为1~9的字符串,使数组中的数据满足数独的规则 示例: 解决思路:先进行一次9*9的遍历,统计已有的数据,再进行遍历,如果该位置为空,则循环 使用1~9中的字符串进行填充,递归的填充后面的空位,如果某个位置不 阅读全文
posted @ 2019-05-01 13:22 秦qin 阅读(100) 评论(0) 推荐(0) 编辑
摘要: 问题: 解决思路:从1到n,按照规则循环读取即可 Python代码: 阅读全文
posted @ 2019-05-01 11:43 秦qin 阅读(141) 评论(0) 推荐(0) 编辑
摘要: 问题:给定一个9*9的二维数组,数组元素为1~9的字符串,“,”代表为空,判断其数据的排列是否符合九宫格的规则 示例: 解决思路:分别以行、列、3*3的小九宫格为单位,使用字典对元素进行计数,初始化全部为0;对输入数组的每一个元素进行遍历,“,”跳过,数字字符则判断其在对应行、列、小九宫格中的计数是 阅读全文
posted @ 2019-04-22 11:31 秦qin 阅读(86) 评论(0) 推荐(0) 编辑
摘要: 问题:给定一个有序数组和一个目标值,输出目标值在数组中的起始位置和终止位置,如果目标值不在数组中,则输出[-1,-1] 示例: 输入:nums = [1,2,3,5,5,7] target = 5 输出:[3,4] 输入:nums = [1,5,8,9] target = 7 输出:[-1,-1] 阅读全文
posted @ 2019-04-18 11:57 秦qin 阅读(91) 评论(0) 推荐(0) 编辑
摘要: 问题:给定一个有序的数组和一个目标值,将数组分为两部分并且交换顺序后,从数组中找到目标值的位置,如果目标值不在数组中,则输出-1 示例: 输入:nums = [3,4,5,6,0,1,2] target=5 输出:2 输入:nums = [4,6,7,1,2,3] target=0 输出:-1 解决 阅读全文
posted @ 2019-04-17 15:48 秦qin 阅读(72) 评论(0) 推荐(0) 编辑
摘要: 问题:给定一个只包含 "(" 和 ")" 的字符串,寻找其括号配对的最长子串,输出其长度 示例: 输入:"())" 输出:2 输入:"(()()()(" 输出:6 解决思路:利用栈来解决,遍历索引进行压栈和弹栈,最后栈中只剩下没有配对成功的索引位置,配对成功的子串长度记为栈中的相邻元素之差减1 Py 阅读全文
posted @ 2019-04-16 10:21 秦qin 阅读(85) 评论(0) 推荐(0) 编辑