摘要:1. 有效的括号 给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。 左括号必须以正确的顺序闭合。 注意空字符串可被认为是有效字符串。 示例 1: 输入: "()"输出: true 示例 2: 输入:
阅读全文
摘要:1.设计哈希映射 不使用任何内建的哈希表库设计一个哈希映射 具体地说,你的设计应该包含以下的功能 put(key, value):向哈希映射中插入(键,值)的数值对。如果键对应的值已经存在,更新这个值。 get(key):返回给定的键所对应的值,如果映射中不包含这个键,返回-1。 remove(ke
阅读全文
摘要:1. 找到小镇的法官 在一个小镇里,按从 1 到 N 标记了 N 个人。传言称,这些人中有一个是小镇上的秘密法官。 如果小镇的法官真的存在,那么: 小镇的法官不相信任何人。每个人(除了小镇法官外)都信任小镇的法官。只有一个人同时满足属性 1 和属性 2 。给定数组 trust,该数组由信任对 tru
阅读全文
摘要:1. 给定一个二叉树,确定它是高度平衡的。 一棵高度平衡的二叉树的定义是:一棵二叉树中每个节点的两个子树的深度相差不会超过1。 依然采用分治法的思想,若一棵树的左右子树都是平衡二叉树,那么这棵树一定是平衡二叉树。 以及只要求出左右子树的深度就可以判断出这棵树是不是平衡二叉树了。 class Tree
阅读全文
摘要:1.查找缺失的数字 一个长度为n-1的递增排序数组中的所有数字都是唯一的,并且每个数字都在范围0~n-1之内。在范围0~n-1内的n个数字中有且只有一个数字不在该数组中,请找出这个数字。 示例 1: 输入: [0,1,3]输出: 2 示例 2: 输入: [0,1,2,3,4,5,6,7,9]输出:
阅读全文
摘要:1. 给你一个仅包含小写英文字母和 '?' 字符的字符串 s,请你将所有的 '?' 转换为若干小写字母,使最终的字符串不包含任何 连续重复 的字符。 注意:你 不能 修改非 '?' 字符。 题目测试用例保证 除 '?' 字符 之外,不存在连续重复的字符。 在完成所有转换(可能无需转换)后返回最终的字
阅读全文
摘要:1.给定一个矩阵 A, 返回 A 的转置矩阵。 矩阵的转置是指将矩阵的主对角线翻转,交换矩阵的行索引与列索引。 def trans_matrix(matrix): (rows,cols)=matrix.shape matrix_obj=np.array([[0 for j in range(rows
阅读全文
摘要:1.给定一个链表,判断链表中是否有环。 用快慢指针的方法。时间复杂度O(n),空间复杂度O(1)。 设置p1为慢指针,p2为快指针,两者初始时都指向链表的头结点 慢指针p1每次前进1步,快指针p2每次前进2步。如果链表存在环,则快指针p2肯定先进入环,慢指针p1后进入环,两个指针必定会相遇。 如果不
阅读全文
摘要:1. 给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。 示例: 输入: [-2,1,-3,4,-1,2,1,-5,4]输出: 6解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。 class Solution: #定义一个函数f(n),
阅读全文
摘要:特点: 1.计数 有多少种方式走到右下角 有多少种方法选出K个数使得和是sum 2.求最大最小值 从左上角走到右小角路径的最大数字和 最长上升序列长度 3.求存在性 取石子游戏,先手是否获胜 能不能选出K个数字使得和是SUM
阅读全文
摘要:给定m行n列得网格,有一个机器人从左上角(0,0)出发,每一步可以向下或者向右走,问右多少种不同的方式走到右下角 原题:机器有多少种方式从左上角走到(m-1,n-1)子问题:状态:设f[i][j]为机器人有多少种方式从左上角走到(i,j)f[i][j]=f[i-1][j]+f[i]f[j-1]初始条
阅读全文
摘要:假设有 1 元, 3 元, 5 元的硬币若干(无限) , 现在需要凑出 11 元,问如何组合才能使硬币的数量最少? d(i) = d(j) + 1, j < i。通俗地讲,如果我们需要凑出 i 元,就在凑出 j 的结果上再加上某一个硬币就行了。 那这里我们加上的是哪个硬币呢。嗯,其实很简单,把每个硬
阅读全文
摘要:1. 01背包 1.1 题目 最基本的背包问题就是01背包问题(01 knapsack problem):一共有N件物品,第i(i从1开始)件物品的重量为w[i],价值为v[i]。在总重量不超过背包承载上限W的情况下,能够装入背包的最大价值是多少? 1.2 分析 如果采用暴力穷举的方式,每件物品都存
阅读全文