- 博客(29)
- 收藏
- 关注
转载 macOS /private/tmp access denied问题的修复
有一天突然发现mysql和brew都不能用了,如图看起来是系统自带的框架里的Ruby碰到了问题,Ruby代码想要写一个目录,但是permission denied了。问题出在/private/tmp这个目录上,稍懂Linux的都会知道这个目录非常重要,如果有不当的删改,会影响系统的正常运作。我尝试的无效修复办法:1)把目录权限改为777,无效,sudo也不行2)安装系...
2019-04-05 12:57:18
1964
原创 Leetcode 合并两个有序链表
问题描述 先上代码:/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */class Solution { public Li...
2019-02-25 19:29:11
266
原创 Leetcode 图解 反转链表
问题描述 先上代码:/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */class Solution { public...
2019-02-25 17:09:22
271
原创 Leetcode 删除链表的倒数第N个节点
给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。示例:给定一个链表: 1->2->3->4->5, 和 n = 2.当删除了倒数第二个节点后,链表变为 1->2->3->5.说明:给定的 n 保证是有效的。进阶:你能尝试使用一趟扫描实现吗?思路:这题做出了不难,难的是要只扫描一遍就做出了。方法是双指...
2019-01-19 17:20:52
200
原创 Intelli IDEA导入普通JAVA项目的方法
最近学习java的时候,在网上下载了一个project的代码,但是在idea打开之后却发现有问题:1)run的按钮变成灰色了,右键代码区的时候弹出的菜单里面没有run的选项2)右键文件夹时菜单里也没有添加java class的选项,连新建类也不行了3)左上角的run configuration框里的配置为空,需要自己手动去设置了,但是在configuration窗口里也无法点选带有ma...
2018-12-22 17:39:39
4409
原创 Leetcode 最长公共前缀
题目:编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 ""。示例 1:输入: ["flower","flow","flight"]输出: "fl"示例 2:输入: ["dog","racecar","car"]输出: ""解释: 输入不存在公共前缀。说明:
2018-12-20 21:29:52
211
原创 Leetcode 报数
题目:报数序列是一个整数序列,按照其中的整数的顺序进行报数,得到下一个数。其前五项如下:1. 12. 113. 214. 12115. 1112211 被读作 "one 1" ("一个一") , 即 11。11 被读作 "two 1s" ("两个一"), 即 21。21 被读作 "one 2", "one 1" (&qu
2018-12-20 13:00:41
182
2
原创 Leetcode 实现strStr()
先上代码:class Solution(object): def strStr(self, haystack, needle): if needle not in haystack: return -1 if needle == '': return 0 m,n = len(haystack...
2018-12-19 18:40:25
251
原创 Leetcode 字符串转换整数 (atoi)
先上代码:import reclass Solution(object): def myAtoi(self, str): str = str.strip() #[-+]表示第一个字符为正负号,?表示匹配正负号0次或1次,\d表示数字,+表示匹配数字一到无限次 digit_str = re.match(r'[-+]?\d+', str)...
2018-12-19 18:12:44
175
原创 macOS下Java 11的安装与配置(最新版Java)
本文适用于:-macOS 10.14 Mojative-Java 11.0.1第一步,安装java JDK。按Command + Space来打开spotlight,输入terminal,然后敲回车,你会看到终端界面然后输入:java --version,显示版本信息,由于你没有安装,此时会弹出提示,点击“更多信息”。点击后来到了官网的下载界面,如下图点...
2018-10-31 10:50:50
30804
4
原创 Leetcode初级算法 验证回文字符串(Python)
问题描述:给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。说明:本题中,我们将空字符串定义为有效的回文串。 算法思路:首先,去除所有非字母和数字的字符,然后统一大小写,再来进行比较。简单的比较可以判断反转前后的字符串是否相同。最快的方法在官方提供的范例中,引入了正则表达式的方法,把所有匹配的字符(字母或者数字)加到空字符串中并转换成小写,...
2018-10-18 15:47:54
386
原创 Leetcode初级算法 有效的字母异位词(Python)
问题描述: 算法思路:意思就是判断第二个字符串是不是第一个字符串打乱的结果,从两方面比较:字符串长度和每个字符出现的字数。注意比较次数是用内置的字符串方法count(),使代码更简洁。代码:class Solution(object): def isAnagram(self, s, t): """ :type s: str ...
2018-10-18 11:07:30
398
原创 Leetcode初级算法 打家劫舍(动态规划)(Python实现)
问题描述:算法思想:该问题的内在逻辑结构依然是动态规划里的经典结构。最关键的是推出状态转移方程,当前规模的对应解法由更低规模的解法,仿佛拾级而上,站在前人的肩膀上不断攀登。实际操作起来,比较实用的方法如下:固定一个比较小的规模n, 进行思维实验。例子:nums = [2,7,9,3,1],求这个数组对应的最高金额。 我们要做的是拿着某个规模的解,去求更高规模的解。用数...
2018-10-13 12:15:31
898
原创 夫妻过河问题---图论算法的应用(Python实现)
class Graph(object): """docstring for Graph""" def __init__(self, mat): super(Graph, self).__init__() self.n = len(mat[0]) self.edge = 0 self.mat = mat ...
2018-10-12 00:00:16
1701
原创 二叉树拓展--三叉树的遍历、路径算法
nodes = ['a',['b',['e',['k','#','#','#'],['l','#','#','#'],'#'],['f',['m','#','#','#'],'#','#'],'#'],\['c',['g',['n',['t','#','#','#'],['u','#','#','#'],'#'],'#','#'],['h',['o',['v',['y','#','#','#']...
2018-10-10 17:57:10
4415
原创 Leetcode初级算法 买卖股票的最佳时机 Python
问题描述:算法思路:一个很自然的想法是找到数组的最大值和最小值,相减得到最大差值。但因为是买卖股票,售出必须发生在买入之后,所以利润对应的买入买出价不一定是数组的极值。举例说明:假设数组的极值为max,min,最佳的买入卖出价格为buy,sell,如果这几个元素的相对顺序为:max,buy,sell,min,显然min和max无法影响答案,因为buy必须放在sell的前面。稍微调整...
2018-10-07 12:55:37
316
原创 Leetcode 爬楼梯 (Python解法)
问题定义:算法思路:本题是动态规划的一个经典实例。解动态规划问题的步骤:1.找出状态转移方程2.设计自顶而下的递归算法 (Top-down approach)3.改写成自底而上的迭代算法(Bottom-up approach)比较熟练或者问题比较简单时可以跳过第二步。在本题中,通过举例可以推出状态转移方程。首先要注意到每一步只能走一个阶梯或者两个阶梯。假如...
2018-10-06 21:08:29
3912
原创 Leetcode 将有序数组转换为二叉搜索树
问题描述:算法思路:注意到给定的数组是已经升序排列的,显然树的根节点为数组中点,那根节点的左子树和右子树又在数组什么位置呢?假设数组中点的下标为mid,显然root.left在左半边:nums[:mid]中,同理root.right在右半边:nums[mid+1:]中。由平衡的性质,不难想到root.left为左半边数组的中点,root.right为右半边数组的中点。这样递归地...
2018-10-06 15:51:24
297
原创 Leetcode 二叉树的层序遍历
问题定义:给定一个二叉树,返回其按层次遍历的节点值。 (即逐层地,从左到右访问所有节点)。例如:给定二叉树: [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回其层次遍历结果:[ [3], [9,20], [15,7]] 算法思路:传统的层序遍历算法,while循环...
2018-10-06 11:49:01
650
原创 LeetCode 初级算法 maxProfit
题目给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。示例 1:输入: [7,1,5,3,6,4]输出: 7解释: 在第 2 天(股票价格 = 1)的时候买入,在第 3 天(股票价格 = 5)的时候卖出...
2018-08-08 22:42:25
1058
原创 LeetCode 初级算法 RemoveDuplicates
问题:给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。示例 :给定数组 nums = [1,1,2], 函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。 你不需要考虑数组中超出新长度后面的元素。思...
2018-08-08 21:06:23
489
原创 LeetCode 初级算法 只出现一次的数字
问题:给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例 1:输入: [2,2,1]输出: 1思路:用位运算,将所有的数组元素进行按位异或。这题非常特别,因为重复出现的元素,重复的次数都是两次,通过按位异或,可以将它们都变成0,留下只出现一次...
2018-08-08 18:51:49
174
原创 LeetCode 初级算法 加一
思路:将列表转换成数字,数字转换成字符串,再生成一个列表。代码:class Solution(object): def plusOne(self, digits): """ :type digits: List[int] :rtype: List[int] """ n = len(digits) ...
2018-08-08 18:49:10
261
原创 LeetCode(初级算法)两个数组的交集
题目:给定两个数组,写一个方法来计算它们的交集。例如:给定 nums1 = [1, 2, 2, 1], nums2 = [2, 2], 返回 [2, 2].注意: 输出结果中每个元素出现的次数,应与元素在两个数组中出现的次数一致。 我们可以不考虑输出结果的顺序。思路:将两个数组分别用字典存起来,那么查询操作只耗费O(1)时间,这是哈希表的应用。代码:cl...
2018-08-08 17:32:55
794
原创 LeetCode(初级算法)旋转数组
思路 (1)数组切片 i = k % len(nums) nums[:] = nums[-i:]+nums[:-i]代码异常简洁优美。需要注意的是k可能大于len(nums),这时k的值更新为对长度len(nums)求余的结果 (2)插入删除 n = len(nums) if k > n: k ...
2018-08-08 17:28:08
453
原创 Leetcode(No.5) 最长回文子串
问题描述:给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为1000。示例:输入: "babad"输出: "bab"注意: "aba"也是一个有效答案。思路与分析:1.动态规划思路:判断一个子串 S(i, j) 是否回文:如果 S[ i ] = S[ j ],且 S[ i+1, j-1 ]是回文串,则 S(i, j) 必定是回文串。...
2018-08-08 12:41:51
438
原创 Leetcode No.4 两个排序数组的中位数/Median of Two Sorted Arrays
问题描述:给定两个大小为 m 和 n 的有序数组 nums1 和 nums2 。请找出这两个有序数组的中位数。要求算法的时间复杂度为 O(log (m+n)) 。你可以假设 nums1 和 nums2 均不为空示例:nums1 = [1, 2]nums2 = [3, 4]中位数是 (2 + 3)/2 = 2.5 思路与分析:1.直接合并:思路:用归并...
2018-08-07 12:53:53
206
原创 Leetcode No.3 无重复字符的最长子串
问题描述:给定一个字符串,找出不含有重复字符的最长子串的长度。示例:给定 "abcabcbb" ,没有重复字符的最长子串是 "abc" ,那么长度就是3。给定 "bbbbb" ,最长的子串就是 "b" ,长度是1。给定 "pwwkew" ,最长子串是 "wke" ,长度是3。请注意答案必须是一个子串,"pwke" 是 子序列 而不是子串。
2018-08-06 22:23:31
241
1
原创 计算机网络&子网&超网
本来给每个host都要分配一个IP,但这样的话很快就会用完所有的IP address。于是引入了subnet技术,把一个IP分给几个physical network,用不同的subnet mask来区分每一个physical network。这样一来,分配一个B类IP可以accommodate 65534个network,一个C类IP可以accommodate 254个network。但如果客户需...
2018-04-28 14:00:41
680
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人