自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(39)
  • 收藏
  • 关注

原创 python多进程踩坑记录--debug断点进不去的问题

问题描述在一个服务里起了一个多进程用来进程目标检测,但是!debug的时候发现断点打到多进程要执行的函数中,发现进不去断点,并且执行这一次的时候发了两个消息!探索过程:一开始以为服务是使用的多进程,可能进程间队列通信的问题导致多进程监听的队列无内容所以一直挂起,但是输出了队列的长度发现队列是有东西的;排除该种可能。找了一位写这个python服务的C++大佬远程定位了下,发现pycharm中Frames除了能看过程居然还有个进程的列表(这是个好东西,大佬也是真大佬),发现在启动多进程的时候程序又从头

2021-06-22 18:50:45 3317 1

原创 pip安装缺少ssl但不想卸载python及依赖包

遇到的问题:先是遇到两台服务器只能单向ping通,但是数据库在ping不通的服务器上。。。尝试在数据库的服务器上写代码,搭建好pycharm可远程连接的docker,但是缺少依赖包,使用pip安装依赖包,出现:尝试了重新编译python(但是我没卸载,因为卸载了python后相应的依赖包就没有了)没有成功。尝试使用pip3安装(因为pip3安装的时候不报少ssl的问题),但是安装scipy和tensorflow失败;打算使用whl安装(因为这样的话pip不用上网),就试了一下pip inst

2021-03-09 17:23:46 255

原创 leecode 888:公平的糖果棒交换

leecode 888:公平的糖果棒交换爱丽丝和鲍勃有不同大小的糖果棒:A[i] 是爱丽丝拥有的第 i 根糖果棒的大小,B[j] 是鲍勃拥有的第 j 根糖果棒的大小。因为他们是朋友,所以他们想交换一根糖果棒,这样交换后,他们都有相同的糖果总量。(一个人拥有的糖果总量是他们拥有的糖果棒大小的总和。)返回一个整数数组 ans,其中 ans[0] 是爱丽丝必须交换的糖果棒的大小,ans[1] 是 Bob 必须交换的糖果棒的大小。如果有多个答案,你可以返回其中任何一个。保证答案存在。来源:力扣(LeetCode

2021-02-01 17:16:54 280

原创 108. 将有序数组转换为二叉搜索树

108. 将有序数组转换为二叉搜索树解题思路:找到列表的中点作为根节点,节点左节点比其小,右节点比其大,由于列表是已排序的,所以使用递归方法将左右两边的列表传入函数中递归计算。若列表为空,或者子节点的左子树或右子树为空则返回None.class Solution: def sortedArrayToBST(self, nums): if not nums: ...

2020-03-23 15:42:05 134

原创 101.对称二叉树(简单)

解题思路:递归:从根节点开始遍历树,若一个树为空,则该树为对称树,返回True,若这个树不为空,则使用递归判断其是否为对称二叉树。对称可以考虑为该节点的左子树的左子树和右子树的右子树相同。若一个二叉树是对称的,那么其子树肯定也是对称的,所以可以使用递归来判断。设置最后跳出的情况为:1.左右节点都为空;2.左右节点有一个非空;3.左右节点不相等class Solution: de...

2019-12-17 17:07:09 107

原创 100.相同的树(简单)

解题思路:使用递归遍历树。当两个树同时为空时返回True,当两个树中只有一个为空时返回False。当前节点非空时,开始比较,若当前节点值相同时,若左节点、右节点同时为空时,返回Ture,非空的话则将其左右节点作为函数的输入比较其左、右节点是否相同。循环遍历到有一方的节点为空为止。class Solution: def isSameTree(self, p: TreeNode, q: ...

2019-12-13 14:12:25 85

原创 88. 合并两个有序数组(简单)

解题思路:使用 i 遍历nums1,由于两个数组都为有序数组所以可以直接比较第 i 个元素和nums2中的元素,若第i个元素比nums2中第一个元素大的话,则将nums2中的的第一个元素插入到第i个位置,将nums2[0]删除(nums2数组中始终保存着没有插入的元素),若第i个位置小于nums2中的第一个元素则 i+1,继续比较下一个元素与nums2中第0个元素的大小。若到最后i >=...

2019-12-13 09:52:33 133

原创 83. 删除排序链表中的重复元素(简单)

解题思路:使用两个指针,用pre指针遍历链表,另外一个res指针记录非重复元素。当pre指针元素与res指针记录的元素不同时,res指针指向下一个位置,再将pre指针中的元素赋值给res指针。最后pre遍历完成后将res指向None以删除后面的所有元素。def deleteDuplicates(self, head): pre = head res = head w...

2019-12-12 16:20:40 126

原创 70. 爬楼梯(简单)

解题思路1:使用斐波那契序列:从第二个之后第n个结果为n - 1, n - 2项之和。使用递归调用。def climbStairs(n): ''' if n == 0: return 0 if n == 1: return 1 if n == 2: return 2 if n > 2: ...

2019-12-10 18:44:43 94

原创 TensorFlow限制占用显存

不设置的话会把剩下所有的显存都占满tf_config = tf.ConfigProto() tf_config.gpu_options.per_process_gpu_memory_fraction = 0.5 # 分配50% tf_config.gpu_options.allow_growth = True # 自适应 (按照设置的batch_size占用显存)session = t...

2019-12-10 18:33:37 275

原创 69.x的平方根

解题思路:二分法可以一次性排除一半的范围。若mid的平方大于x,则范围在(l,mid -1),令r = mid -1,反之在(mid, r)的范围,令l = mid。直到l <= r,返回l。若mid的平方正好等于x则直接返回mid。def mySqrt(x): r = x while l < r: mid = l + (r - l + 1) //...

2019-11-27 19:10:12 104

原创 67.二进制求和(简单)

解题思路一:暴力遍历(88ms)将a转换为a、b中最长的字符串,将a、b转换为数字列表a1、b1不用来回转换元素类型方便计算。设置i为b1的索引号(从后往前),设置j为a1的索引号(在遍历的时候使用-j以从后往前遍历)。从后往前遍历b1(短的字符串对应的列表),将a1相对应的位置赋值为a1、b1列表中对应元素的和。判断a1列表中的数值是否存在数值2,若存在2则对应位置赋值为0,前一位置加1,为...

2019-11-27 16:28:42 236

原创 66.加一(简单)

解题思路:字符串拼接后转换为整数,对整数进行加1,再将得到的结果转换为字符串,遍历之后转为整数存入列表中。(用时44ms,内存13.7 MB)def plusOne(digits): res = '' for i in range(len(digits)): res = res + str(digits[i]) mid = str(int(res...

2019-11-26 17:21:45 167

原创 58.最后一个单词的长度(简单)

解题思路:使用库函数,先将首尾空白字符串用strip()去掉,再用split()按照空格分开,形成一个列表,返回最后一个元素的长度。def lengthOfLastWord(s): if s.strip() == '': return 0 lists = s.strip().split(' ') return len(lists[-1])...

2019-11-25 18:37:54 72

原创 53.最大子序和(简单)

解题思路:(动态规划)定义两个变量来表示当前子序和和最大子序和:temp、maxsum。若temp大于0则说明该子序和对下一子序有增益作用,则更新当前子序和temp,若temp小于等于0,则说明当前子序和于下一子序有负作用,最长子序列长度到此为止,更新子序,以该元素为起点继续找最大子序。更新最大子序列和。def maxSubArray(nums): temp = nums[0] ...

2019-11-25 17:07:23 84

原创 38.报数(简单)

解题思路:先列出n = 1时的情况,返回‘1’,从1往后开始循环。先设置下一结果result为空字符串,字符出现数量count为1。开始循环读取上一字符串的内容。每个字符串都与下一字符串进行比较,若与下一字符串相同则count+1,若不相同则将结果加入result中,并且count重置为1,为了解决越界问题,将最后一个字符串单独判断。(就算遇见最后一个字符串与上一字符串相同的情况也可以解决问题...

2019-11-21 18:58:15 102

原创 35.搜索插入位置(简单)

解题思路:使用二分法:先预判size为0的数组和最后一位比target小的数组然后使用二分法遍历查找def searchInsert(self, nums: List[int], target: int) -> int: if size == 0: return 0 if nums[-1] < target: return si...

2019-11-20 18:38:17 76

原创 28.实现strStr()(简单)

解题思路一:(使用时长36ms)使用python中的string.find()函数,找到子串返回第一个位置的索引号,找不到则返回-1.(有一个类似的函数string.index(),但是index函数找不到会抛出异常)def strStr(haystack, needle): if not needle: return 0 return haystack.fi...

2019-11-20 14:38:43 68

原创 27.移除元素(简单)

解题思路:与26题类似,使用双指针法。使用i记录数组中遍历的索引号,使用k记录除了val值之外的新的元素索引号。def removeElement(nums, val): k = 0 for i in range(len(nums)): if nums[i] != val: nums[k] = nums[i] k...

2019-11-18 11:18:11 75

原创 26.删除排序数组中的重复元素

解题思路一:使用while判断i是否在新的数组的长度之内。若第i个元素与它后面的元素中有重复的则删除第i项,再次判断i是否在新的数组长度之内,若第i个元素不与后面列表中的元素重复,则i+1进行下一位判断。循环直至i不在最后的数组的长度内。(缺点:反复判断循环占用内存和时间都大)def removeDuplicates(nums): i = 0 while i < len...

2019-11-14 17:57:13 65

原创 21.合并两个有序列表(简单)

解题思路:新建一个链表,head为表头指针。当两个链表非空时,若l1的值小于l2中的值则将l1中的值写入当前p链表的指针中,否则写入l2中的值,指针继续向下。最后当有一个链表为空直接将p的最后一个指针指向那个非空的链表。若两个链表里有一个为空则返回非空的那个链表,def mergeTwoLists(l1, l2): p = ListNode(-1) head = p while l1...

2019-11-13 20:40:08 138

原创 20.有效的括号(简单)

解题思路:使用栈后入先出的原理,从左向右读取字符串,若遇到左括号就将左括号放入栈中,若遇到右括号则与它前一个的字符相比较,若能够与字典中的右括号对应上就继续执行(使用pop()函数将前一个左括号pop出)若对应不上则返回False。最后栈中应该只剩下“?”才是完全对应的。注意:return False和return True不能使用return"false/ture"(最后结果会返回true...

2019-11-13 11:45:16 94

原创 leetcode:14. 最长公共前缀(简单)

解题思路:找出最短的字符串长度,然后将最短的字符串分别与其他字符串进行比较,若最短字符串与该字符串与最短字符串长度相同的段相同则继续判断下一个,若不相同则将最短字符串减去一个字符,循环到最后直到找到最大相同字符串为止。def longestCommonPrefix(self, strs: List[str]) -> str: if len(strs) == 0: ...

2019-11-11 21:09:51 81

原创 Linux操作命令记录

激活anaconda环境,进入anaconda base环境eval “$(/root/anaconda3/bin/conda shell.bash hook)”安装指定镜像:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple 模块名使用阿里云镜像下载安装:pip install pack_name -i http://mirror...

2019-11-08 14:31:06 201

原创 力扣13罗马数字转整数(简单)python3

解题思路:判断所有的’I’、‘X’、‘C’的左边字符是否为特殊规则,若为特殊规则则减去罗马字符相对应的数字,若为正常规则则加上该罗马字符对应的数字。```pythonclass Solution:    def romanToInt(self, s: str) -> int:      &...

2019-11-07 17:18:25 367

原创 出现scikit-learn 没有正确安装问题

一般为numpy兼容问题解决方法:卸载numpypip uninstall numpy再重新安装numpypip install numpy

2019-10-30 11:50:57 944

原创 python 读取 xls文件

import sysimport xlrd#from xlrd import open_workbook#import pandas as pdimport xlwtfile_path = 'D:\data\\gmy\\文学\\傲慢与偏见.xls'file = pd.read_html(file_path)#获取.xls工作簿对象'''sheet_name = file.sheet...

2019-09-26 15:54:52 4876 1

转载 python 读取tmx文件

转载自http://www.pianshen.com/article/4142315326/# -*- coding:utf-8 -*-import codecsimport xml.etree.ElementTree as ETimport sysdefaultencoding = 'utf-8'if sys.getdefaultencoding() != defaultenco...

2019-09-26 15:46:55 1820

原创 UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte 问题

解决方案:方案一:使用notepad++打开文件,将文件转为utf-8的格式方案二:python2 中在.py文件中添加:import sysimport codecsdefaultencoding = 'utf-8'if sys.getdefaultencoding() != defaultencoding: reload(sys) sys.setdefaultenco...

2019-09-26 14:44:56 534

转载 机器翻译数据处理重要过程

机器翻译重要过程(1)—数据预处理:https://blog.csdn.net/yaoqiang2011/article/details/10273221机器翻译重要过程(2)—词语对齐 : https://blog.csdn.net/yaoqiang2011/article/details/10283995机器翻译重要过程(3)—抽取短语:https://blog.csdn.net/yaoq...

2019-09-19 18:16:12 881

原创 力扣 9. 回文数

题目来源:力扣 https://leetcode-cn.com/problemset/all/class Solution: def isPalindrome(x): ''' #使用字符串翻转 x = str(x) if x[::-1] == x: return True else:...

2019-09-03 13:44:45 182

原创 力扣 8.字符串转换整数

题目来源:力扣 https://leetcode-cn.com/problemset/all/class Solution: def myAtoi(self, str: str) -> int: #去掉左边空字符 str=str.lstrip() #如果字符串为空,返回0 if len(str)==0: ...

2019-09-03 13:22:47 219

原创 力扣 4. 寻找两个有序数组的中位数

题目来源:力扣 https://leetcode-cn.com/problemset/all/要求时间复杂度为 O(log(m + n)),下面的方法没有达到,sort()函数本质为快排其时间复杂度为:O(NlogN),一般复杂度为log的要用到二分class Solution: def findMedianSortedArrays(self, nums1: List[int], n...

2019-09-03 12:05:09 298

原创 力扣 1. 两数之和

题目来源:力扣 https://leetcode-cn.com/problemset/all/ class Solution: def twoSum(self, nums: List[int], target: int) -> List[int]: ''' 方法一:暴力遍历(时间复杂度o(n^2)...

2019-09-03 11:55:11 139

原创 力扣6. Z字形变换

题目来源:力扣https://leetcode-cn.com/problemset/all/class Solution: def convert(s, numRows): if numRows < 2: #若行数小于2则直接返回字符串 return s res = ["" for _ in range(...

2019-09-03 11:30:15 157

原创 力扣7. 整数反转

题目来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/reverse-integer著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。def reverse(x): a = [] s = str(x)#数字转换为字符串 st = '' #判断若为一位数则直...

2019-09-02 18:19:20 152

原创 Windows 用cmd搜索路径下特定文件名并将路径输出到文件

使用命令:for /r [dirname] %i in (*.png) do @echo %i >>[dirname/]img_path.txt若使用>而不是>>则覆盖上一次输入,即最后得到的文件只有最后一条输入

2019-08-21 18:29:04 3691

原创 pytorch loss = loss_func(output, label) 报错

pytorch 实现手写识别运行交叉熵loss时loss_fn = nn.CrossEntropyLoss(outputs, y_label)出现错误:RuntimeError: Expected object of scalar type Long but got scalar type Int for argument #2 ‘other’原因:CrossEntropyLoss()使用on...

2019-08-15 21:40:15 1544

原创 anaconda navigator卡在adding feature channels打不开

anaconda navigator卡在adding feature channels打不开之前anaconda navigator都能够打开,但是安装完caffe后就打不开了终端启动anaconda navigator报错:Traceback (most recent call last):File “D:\studytools\lib\site-packages\anaconda_na...

2019-08-15 12:10:00 7239 5

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除