- 博客(107)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Ubuntu必备技能——深度学习环境Nvidia、Cuda、Cudnn、Anaconda、Pytorch、Pycharm、Vim、虚拟环境、Tmux分屏复用
深度学习环境配置一、安装NVIDIA显卡驱动:1.1屏蔽sudo vim /etc/modprobe.d/blacklist.conf—文件最后添加下面几行:blacklist vga16fbblacklist nouveaublacklist rivafbblacklist rivatvblacklist nvidiafb更新、重启sudo update-initramfs -usudo reboot重启后,得等一会才能正常连接服务器,输入下面指令lsmod | gr.
2020-12-15 11:07:22
360
2
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 【三角形最大路径和】递归、记忆化搜索、深度搜索(DFS打印所有路径、最大路径)、动态规划(DP)对比
参考链接,请参考原文,博主按照该文章顺了一遍,并加上自己的理解而已下面所有的代码,如果不想提前新建nums[1000][1000],可以使用双重list动态存储题目描述有一个层数为n(n<=1000)的数字三角形。现有一只蚂蚁从顶层开始向下走,每走下一级,可向下或右下方向走。求走到底层后它所经过数字的总和的最大值。【输入格式】第一个整数为n,一下n行为各层的数字。【输出格式】一...
2019-08-19 17:45:44
1698
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 【java笔试】常见方法汇总
数组int[] nums = new int[5]int[] arrays = {1, 2, 3, 4, 5};nums.lengthscanner类的常用方法Scanner scan = new Scanner(System.in)scan.next()(默认是String类型,一个一个读取,遇到空格结束)scan.hasNext()scan.nextLine()(读取一整行,...
2019-07-29 11:10:19
703
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Markdown进阶(更改字体、颜色、大小,设置文字背景色,调整图片大小设置居中)
基础知识: Markdown 通过简单标记语法,使普通文本内容具有一定格式。但它本身不支持修改字体、字号与颜色等功能的。CSDN-markdown 编辑器是其衍生版本,支持基于 PageDown ( Stack Overflow)所使用的编辑器的扩展功能(如表格、脚注、内嵌HTML、内嵌 LaTeX 等等)。 Size:规定文本的尺寸大小,取值从 1 到 7 ,浏览器默认值是 3...
2018-07-24 18:08:20
298975
20
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 ubuntu,windows 更改pip源,构造虚拟环境
ubnuntu pip更换源永久置换:cd ~/.pip 如果提示目录不存在的话,我们要自行创建一个,再进入目录 mkdir ~/.pip cd ~/.pip在.pip目录下创建一个pip.conf文件 touch pip.conf编辑pip.conf文件 sudo gedit ~/.pip/pip.conf打开pip.conf文件窗口,将以下内容复制到文件中: ...
2018-02-07 21:33:52
2016
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 【完整版:深度学习环境配置】
声明:本次博客主要记录自己配置环境的过程以及中间遇到的问题和解决问题的方案,如果能有幸帮助到他人不胜荣幸,如果错误,望指出,以便及时更改。另外本方法是博主在自己的机子上一步一步进行的,确保可行,但是具体到不同的机子可能会有不同的问题,仅供参考。环境:纯净的ubuntu16.04 显卡: GTX1050安装流程: 1、安装英伟达显卡驱动 2、安装cuda8.0 3、安装cudnn 4、安装
2017-05-13 22:02:11
11322
2
原创 剑指offer 38:字符串的排列(组合)
题目:输入一个字符串,打印出该字符串中字符的所有排列,例如,输入字符串abc,打印出由字符abc、acb、bac、bca、cba、cab。思想:把字符串看成两部分,第一部分是它的第一个字符,第二部分是后面的左右字符求出第一部分所有可能的情况(通过第一个字符和其后面字符交换实现)第二部分的字符仍然可以分成:后面部分第一个字符及其之后的字符(递归实现)package test;pub...
2019-09-07 17:54:58
348
原创 【二叉树-4】给定数组生成完全二叉树
题目描述:给定一个数组,生成一个完全二叉树,也就是将数组的值赋给二叉树的各个节点思想:先将数组的值全部转化树节点,并将树节点存储到LinkedList中遍历所有的父节点(除最后一个),然后给其左右孩子赋值(树结点)处理最后一个父节点,因为最后一个父节点可能没有右孩子注意:1、父节点数组下标从0到 n/2 -1 ,但是遍历时要小于n/2-1,因为最后一个父节点可能没有右孩子,当n/...
2019-08-20 18:44:35
3477
原创 【二叉树-3】打印二叉树中和为target的所有路径
参考链接题目描述:输入一颗二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。思想:利用树的先序遍历访问所有结点,先将当前结点存储,然后更新target为target-root.val,继续递归访问其左右子树即可。如果到达叶子结点的时候,target==0,则当前路径即为所求路径import java.uti...
2019-08-20 17:59:48
677
原创 【二叉树-2】二叉树的层级遍历:从上到下按层打印
题目描述:给定一个二叉树,返回其按层次遍历的节点值,即按照层次,从上到下,从左到右遍历所有结点例如:给定下列二叉树,打印结果[[1], [2, 3], [4, 5, 6, 7]]思想:使用广度优先搜素,即使用队列(先进先出)先判断根节点是否为空,若是,直接返回若非空,将根节点入队,然后判断队列是否为空,若不为空,访问队首结点(保存或打印),然后将队首结点出队,接着判断其左右子节点是...
2019-08-20 15:42:17
501
原创 【回溯法】:剑指offer12:矩阵中的路径
题目描述:请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径。路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向左,向右,向上,向下移动一个格子。如果一条路径经过了矩阵中的某一个格子,则之后不能再次进入这个格子。 例如 a b c e s f c s a d e e 这样的3 X 4 矩阵中包含一条字符串”bcced”的路径,但是矩阵中不包含”abcb”路径,因为字...
2019-08-18 16:10:58
148
原创 【动态规划】剑指offer14:剪绳子
题目描述:给你一根长度为n的绳子,请把绳子剪成m段 (m和n都是整数,n>1并且m>1)每段绳子的长度记为k[0],k[1],…,k[m].请问k[0]k[1]…*k[m]可能的最大乘积是多少?例如,当绳子的长度为8时,我们把它剪成长度分别为2,3,3的三段,此时得到的最大乘积是18.思想定义f(n)为把长度为n的绳子剪成若干段后各段长度乘积的最大值在剪第一刀的时候,我们有n...
2019-08-17 11:30:23
133
原创 【递归-数组全排列】
仅以此博客记录学习,侵权即删。利用递归实现数组的全排列,个数为12***n参考链接import java.util.Arrays; public class permutation{//s表示,从array[start]后的数据进行全排列public static void permute(int[] array,int start){ if(start==array.leng...
2019-08-03 17:25:18
452
原创 【猿辅导-笔试真题】大巴车(数组分块,按块翻转,块内不变)
该博客仅作为学习笔记,如侵权,请告知,速删。题目描述:某天 HR 组织大家去漂流,早上,参加团建的同学都到齐了,并且按到达公司的先后顺序排好队了。 由于员工太多,一个大巴车坐不下,需要分多个车,车是足够的,但所有人需要按一定顺序上车,按如下规则安排上车的顺序:假设大巴车容量为 m,从队首开始,每 m 个人分成一个小组,每个小组坐一辆车。同时只有一个车打开车门供员工上车。 小组之间按从队尾到队...
2019-07-30 21:42:58
393
原创 【拼多多-笔试题】构造字符串
题目描述:有一个长度为n的字符串P,我们可以通过P构造出一个无限长度的字符串S,其中S[i]=P[i%n]。给定一个字符串S,求可以通过上述方法构造出S的最短字符串P。思想:遍历每一种可能的子串(子串长度由小到大)将子串重复多次进行拼接(取整和取余)判断和原字符串是否相等(存在就是最小的符合要求的子串)public class test1 { public static void...
2019-07-27 21:28:07
553
原创 【拼多多-笔试真题】数组山谷
题目描述:数组里的山谷是指一个数组A中的连续子数组B满足以下条件:(1)B.length>=3;(2)存在满足:0<i<B.length-1并且B[0]>B[1]>…>B[i-1]>B[i]<B[i+1]<…<B[B.length-1];现给定一个整形数组A,找出数组A里的最长山谷B的长度,如果没有,则输出0.思想:分段统计...
2019-07-27 17:51:16
757
原创 【拼多多-笔试真题】旋转字符串
题目描述:给定一个字符串,按顺时针顺序输出为一个正方形,具体规则如下:1、从上边开始,上边从左到右2、然后到右边,右边从上到下3、然后是下边,下边从右到左4、最后是左边,左边从下到上输入描述:输入一行,包含4k(k为整数,1<= k <= 10)个小写字母输出描述:输出k+1行,按照上面规则输出正方形,正方形内部用空格填充实例一:输入:abcdefghijklm...
2019-07-27 15:51:45
273
原创 【数组-3】leetcode27:移除元素(Remove Element)
题目描述、参考链接题目描述:给定一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。示例 1:给定 nums = [3,2,2,3], val = 3,函数应该返回新的长度 2, ...
2019-07-26 17:20:48
153
原创 【数组-2】leetcode26:删除排序数组中的重复项(Remove Duplicates from Sorted Array)
题目描述、参考链接题目描述:给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。示例 1:给定数组 nums = [1,1,2],函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。你不需要考虑数组中超出新长度后面的元...
2019-07-26 16:58:02
166
原创 【数组-1】leetcode1:两数之和(Two Sum)
题目描述、参考链接题目描述:给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [...
2019-07-26 16:34:30
146
原创 【面试笔试真题】二维数组环形打印的实现
题目描述:对二维数组实现环形打印(具体效果见下面)1 2 3 412 13 14 511 16 15 610 9 8 7思想:环形打印上横(左到右,改变列)右纵(上到下,改变行)下横(右到左,改变列)左纵(下到上,改变行)PS:这里直接新建了一个数组,如果是给定数组,打印对应的数字即可(count对应原数组下标)public class test1 { publ...
2019-07-25 22:21:31
547
原创 【字符串-7】leetcode28:实现strStr()(Implement strStr())
题目描述、参考链接题目描述:实现 strStr() 函数。给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始)。如果不存在,则返回 -1。示例 1:输入: haystack = “hello”, needle = “ll”输出: 2示例 2:输入: haystack = “aaaa...
2019-07-25 21:09:40
106
原创 【字符串-6】leetcode22:括号生成(Generate Parentheses)
题目描述、参考链接题目描述:给出 n 代表生成括号的对数,请你写出一个函数,使其能够生成所有可能的并且有效的括号组合。例如,给出 n = 3,生成结果为:[“((()))”,“(()())”,“(())()”,“()(())”,“()()()”]思想:这种列出所有情况的考虑使用递归,由于只有左右字符串,所以最终生成的串必定n个左n个右括号定义left和right表示...
2019-07-25 16:21:05
109
原创 【字符串-5】leetcode20:有效的括号(Valid Parentheses)
题目描述、参考链接题目描述:给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。示例 1:输入: “()”输出: true示例 2:输入: “()[]{}”输出: true思想:利用栈的特性,遍历字符串,遇到左...
2019-07-25 10:30:32
149
原创 java常见类基本用法
Stack的基本使用初始化Stack stack=new Stack判断是否为空stack.empty()取栈顶值(不出栈)stack.peek()进栈stack.push(Object);出栈stack.pop();
2019-07-25 10:00:02
182
原创 【二叉树-1】leetcode94:二叉树的中序遍历(Binary Tree Inorder Traversal)
题目链接和参考链接题目描述:给定一个二叉树,返回它的中序 遍历。示例:输入: [1,null,2,3]1\2/3输出: [1,3,2]进阶: 递归算法很简单,你可以通过迭代算法完成吗?思想:中序遍历:先递归左子树,再处理根节点,最后递归右子树import java.util.ArrayList;import java.util.List;class TreeNod...
2019-07-13 22:30:40
117
原创 【字符串-4】leetcode17:电话号码的字母组合(Letter Combinations of a Phone Number)
题目链接和参考链接题目描述:给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。示例:输入:“23”输出:[“ad”, “ae”, “af”, “bd”, “be”, “bf”, “cd”, “ce”, “cf”].说明:尽管上面的答案是按字典序排列的,但是你可以任意选择答案输出的顺序。思想...
2019-07-12 18:26:55
176
原创 【字符串-3】leetcode-14:最长公共前缀(Longest Common Prefix)
题目链接和参考链接题目描述:编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 “”。示例 1:输入: [“flower”,“flow”,“flight”]输出: “fl”示例 2:输入: [“dog”,“racecar”,“car”]输出: “”解释: 输入不存在公共前缀。思想:直接遍历第一个字符串,然后依次取出字符与后续字符串的相应位置...
2019-07-12 15:45:16
171
原创 【字符串-2】leetcode-5:最长回文子串(Longest Palindromic Substring)
题目链接和参考链接题目描述:给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。示例 1:输入: “babad”输出: “bab”注意: “aba” 也是一个有效答案。示例 2:输入: “cbbd”输出: “bb”思想:循环遍历字符串,以每一个子串为中心,向两侧扩散寻找回文串,也就是判断两侧字符是否相等;首先判断剩余的字符数是否小于...
2019-07-12 12:13:50
170
原创 【字符串-1】leetcode-3:无重复字符的最长子串(Longest Substring Without Repeating Characters)
题目链家和参考链接题目描述:给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入: “abcabcbb”输出: 3解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。示例 2:输入: “bbbbb”输出: 1解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。示例 3:输入: “pwwkew”输出: 3解释: 因为无重...
2019-07-12 11:12:29
93
原创 【链表-7】leetcode-61:旋转链表(Rotate List)
题目描述:给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数。示例 1:输入: 1->2->3->4->5->NULL, k = 2输出: 4->5->1->2->3->NULL解释:向右旋转 1 步: 5->1->2->3->4->NULL向右旋转 2 步: 4-...
2019-07-09 22:04:46
107
原创 【链表-6】leetcode-25:k个一组翻转链表(Reverse Nodes in k-Group)
链表问题注意事项:一般在处理链表问题时,我们大多时候都会在开头再加一个 dummy node,因为翻转链表时头结点可能会变化,为了记录当前最新的头结点的位置而引入的 dummy node,有的时候还要注意最后一个结点.next;所谓按照长度K分段,无非就是循环遍历,然后判断 i % k == 0是否满足;所谓的翻转本质上还是插入(三部曲)操作,例如pre–>1–>2–>3...
2019-07-09 16:43:46
180
原创 【链表-5】leetcode-24:两两交换链表中的节点(Swap Nodes in Pairs)
题目链接和参考链接题目描述:给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。示例:给定 1->2->3->4, 你应该返回 2->1->4->3.思想:新建虚拟头结点dummy,使得dummy.next始终指向第一个结点,然后定义临时结点,三行代码(固定顺序)交换即可,建议...
2019-07-09 12:09:47
134
原创 【链表-4】leetcode-23:合并K个排序链表(Merge K Sorted Lists)
题目链接和参考链接题目描述:合并 k 个排序链表,返回合并后的排序链表。请分析和描述算法的复杂度。示例:输入:[1->4->5,1->3->4,2->6]输出: 1->1->2->3->4->4->5->6思想:分而治之思想,进行两两合并,对半划分,k个链表分成k/2个两两合并举例来说,如果合并6...
2019-07-09 10:20:48
87
原创 【链表-3】leetcode-21:合并两个有序链表(Merge Two Sorted Lists)
题目链接和参考链接题目描述:将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例:输入:1->2->4, 1->3->4输出:1->1->2->3->4->4思想:新建一个链表,然后比较两个链表中的元素值,将较小的值放到新链表的后端,同时更新那两个输入的链表;处理一下两个链表长度不...
2019-07-08 16:36:26
98
原创 【链表-2】leetcode-19:删除链表的倒数第N个结点(Remove Nth Node From End of List)
题目链接和参考链接题目描述:给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。示例:给定一个链表: 1->2->3->4->5, 和 n = 2.当删除了倒数第二个节点后,链表变为 1->2->3->5.说明:给定的 n 保证是有效的。进阶:你能尝试使用一趟扫描实现吗?思想:不需要提前进行一次遍历,得到链表的长度,...
2019-07-08 15:53:13
103
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人