- 博客(15)
- 收藏
- 关注
原创 LeetCode 17 电话号码的字母组合
题目:思路:使用回溯法对这道题进行求解,如输入23,则需要在定住2中一个字母如a的情况下,对3的字母遍历,形成组合,当3的字母遍历完成后,再选择2的第二个字母,再对3的字母进行遍历。当有多个数字输入时的处理相同,即对每个数字所代表的字母逐层遍历,每次遍历每层取一个字母,选取的字母总长度等于输入的数字位数时,将这次遍历结果加入最终结果集。代码:class Solution: ...
2019-05-21 10:50:41
210
原创 LeetCode 49 字母异位词分组
题目描述:思路:将数组中的每个字符串进行字符排序,使用字典记录每种不同的排序,将每个排序对应的字符串加入字典。代码:class Solution: def groupAnagrams(self, strs: List[str]) -> List[List[str]]: res = {} for i, s in e...
2019-05-10 13:29:16
239
原创 LeetCode 48 旋转图像
题目描述:思路:方阵的旋转可以通过外层环形交换和内层环形交换完成,n维方阵只需要对n/2个环进行交换即可。matrix[i][j]是每个环交换的起点,由0行开始,n/2行完成后所有交换完成,每层第一个环的起点都从对角线位置开始。代码:class Solution: def rotate(self, matrix: List[List[int]]) -> No...
2019-05-09 10:40:37
207
原创 LeetCode 70 爬楼梯
题目描述:思路:n=1,climbStairs(1)=1n=2,climbStairs(2)=2n>2,爬到n阶可以看做是,由n-1阶爬1阶,由n-2阶爬2阶climbStairs(n) =climbStairs(n-1) +climbStairs(n-2)代码:class Solution: def climbStairs(self, n: i...
2019-05-08 09:14:46
150
原创 LeetCode 64 最小路径和
题目描述:思路:采用动态规划的方法,具体思路和之前几个路径问题类似,使用一个辅助二维数组tem,tem中第1行中的每个值是原数组值+tem左侧一个位置的值,tem中第1列中的每个值是原数组值+tem上侧一个位置的值。tem其余位置的值都是从左侧一个位置和上侧一个位置选出最小值,加上原数组值,最后tem[-1][-1]就是结果值。具体思路参考LeetCode 62:https://b...
2019-05-07 10:20:19
142
原创 LeetCode 63 不同路径II
题目描述:思路:基本思路还是和62题不同路径相似,除0行和0列之外,其他位置的值是上侧和左侧值之和。不同的是要加入查障碍,先将矩阵中的障碍1转化为-1,若0行或0列有-1,此位置之后的所有值均为-1。更新其他位置时,如果此位置为-1则不做更新,如果上左有一个-1,则只加另一侧值,上class Solution: def uniquePathsWithObstacl...
2019-05-06 10:54:28
145
原创 LeetCode 46 全排列
题目描述:思路:一个数列[1,2,3,4],进行全排列时,首先交换3、4,成为[1,2,4,3]。之后将2、3互换形成[1,3,2,4]、[1,3,4,2]。首先定住长度为n的数组的前n-1个对第n个进行全排列,之后对第n-1和第n个进行全排列。全排列过程即每轮对两个数进行交换,结果在最后加入结果集合。思路参考:https://blog.youkuaiyun.com/summerxiachen...
2019-05-04 14:25:19
106
原创 LeetCode 55 跳跃游戏
题目描述:由于前面先做了45题跳跃游戏2,所以开始的思路就是借鉴之前的想法从前向后进行跳,只考虑当前一次跳和二次跳,看二次跳的下标是否大于等于数组长度-1,大于等于的话就可以跳出,但这个题完全按照45是行不通的,因为有的位置的值为045题链接:https://mp.youkuaiyun.com/postedit/89743281某个位置0值可以分成两种情况:1、可以跳过0 2、无法跳...
2019-05-03 11:03:26
102
原创 LeetCode 45 跳跃游戏II
题目描述:使用贪心算法进行求解,此题使用的贪心算法不是贪每个位置所能跳到的最远位置,而是去找在每个位置的一次跳跃范围内的某一点,从该点进行二次跳跃所能到达的位置最远,所以需要两个变量来记录跳跃位置,cur表示一次跳能够到达的最远位置,pre表示在一次跳范围之内二次跳能够到达的最远位置,当i到达一次跳能到达的最远位置时,对cur进行更新,更新为在一次跳范围内所能到的二次跳最远位置。直到跳出数...
2019-05-02 11:18:39
128
原创 leetcode 62不同路径
首先建立一个m*n的数组,数组中的值是能到达此格子的路线数,题目规定只能向下或向右移动,所以第一行和第一列的格子只能从其左侧或上侧移动而来,所以第一行和第一列的值为1,其余格子值为其左侧和上侧格子值之和class Solution: def uniquePaths(self, m: int, n: int) -> int: if m == 0 or n ...
2019-04-25 09:43:38
136
原创 基于注意力机制的GAE中问题链接
load_data_monti:csr_matrix:https://blog.youkuaiyun.com/sinat_33741547/article/details/79878547initialization:tf.truncated_normal:https://blog.youkuaiyun.com/u013713117/article/details/65446361/ tf.random_un...
2019-04-20 10:45:34
176
原创 python numpy tile函数
tile函数位于python模块 numpy.lib.shape_base中,他的功能是重复某个数组。比如tile(A,n),功能是将数组A重复n次,构成一个新的数组1、n为一个数,将a重复n次from numpy import *a = [0, 1, 2]b = tile(a, 3)print(b)[0 1 2 0 1 2 0 1 2]2、n为一个元组,将a重复第一...
2018-09-28 15:13:50
156
原创 关于cin输入字符串数组的小困惑(想明白再填坑)
刷牛客遇到一个很简单的逆置一段英文的问题,题目很简单,本来以为早饭功夫能写完愣愣拖了一上午,在codeblocks里一直再调控制string数组输入的问题。while(cin>>s[i]) i++;本想通过这段代码完成对字符串输入的控制,但是奈何输完一句后按回车并没有结束。后来讲while内的条件改成s[i]!="\n",s[i]!="\r",都不好用,最后发...
2018-09-19 15:35:38
4824
原创 网易2017校招合唱团
题目描述有 n 个学生站成一排,每个学生有一个能力值,牛牛想从这 n 个学生中按照顺序选取 k 名学生,要求相邻两个学生的位置编号的差不超过 d,使得这 k 个学生的能力值的乘积最大,你能返回最大的乘积吗?输入描述:每个输入包含 1 个测试用例。每个测试数据的第一行包含一个整数 n (1 <= n <= 50),表示学生的个数,接下来的一行,包含 n 个整数,按顺序表示每...
2018-09-17 11:30:34
251
原创 python安装pandas过程&更新pip的unicodedecodeerror异常的处理
安装python初期只进行了语言基础的学习,最近开始进行数据处理的学习发现需要进行pandas包及numpy包的安装,纯python新手,只能去翻阅博客。 通过看了一些博客后发现,用python的pip直接安装最方便1、cmd或者powershall或者进入python所在安装目录的scripts目录下,我的目录在C:\Python27\Scripts,直接输入pip install pan...
2018-06-08 10:13:31
1894
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人