python
文章平均质量分 60
归遇卿
不会写代码的码农......
展开
-
机器学习1:基于逻辑回归分类鸢尾花
1.逻辑回归简介原创 2021-06-07 21:13:25 · 1155 阅读 · 1 评论 -
pytorch 显示加载的数据集图片
import torchimport torchvisionimport torchvision.transforms as transformsimport matplotlib.pyplot as pltimport numpy as nptransform=transforms.Compose( [ #将图片的灰度范围从0-255转到0-1 transforms.ToTensor(), #(0.5,0.5,0.5) 是 R G B .原创 2020-09-24 17:07:03 · 774 阅读 · 0 评论 -
Python 剑指offer 【25】:删除链表中的一个节点
代码:'''剑指offer25:删除一个链表节点'''# Definition for singly-linked list.# class ListNode(object):# def __init__(self, x):# self.val = x# self.next = Noneclass Solution(object): def deleteNode(self, head, val): if head==Non..原创 2020-09-05 09:06:22 · 147 阅读 · 0 评论 -
Python 剑指offer 【24】:连续子数组的最大和
题目描述:代码:#采用动态规划的思想class Solution(object): def maxSubArray(self, nums): for i in range(1,len(nums)): nums[i]+=max(nums[i-1],0) return max(nums)原创 2020-09-05 08:30:30 · 109 阅读 · 0 评论 -
Python 剪枝offer 【23】:第一个只出现一次的字符
题目描述:代码:class Solution(object): def firstUniqChar(self, s): dic={} for ch in s: if ch not in dic: dic[ch]=True else: dic[ch]=False print(dic.keys()) for k in dic.key原创 2020-09-02 09:43:22 · 104 阅读 · 0 评论 -
Python 剑指offer【21】:两个链表第一个公共节点
题目描述:代码:# Definition for singly-linked list.# class ListNode(object):# def __init__(self, x):# self.val = x# self.next = Noneclass Solution(object): def getIntersectionNode(self, headA, headB): nodeA=headA原创 2020-08-24 10:47:47 · 118 阅读 · 0 评论 -
Python 剑指offer 【20】:调整数组顺序使得奇数位于偶数前边
题目描述:代码:class Solution(object): #使用双指针 def exchange(self, nums): head,tail=0,len(nums)-1 #如果头指针指向偶数,尾指针指向奇数,则交换数字 while head<=tail: if nums[head]%2==0 and nums[tail]%2==1: temp=nums[head原创 2020-08-24 09:57:43 · 150 阅读 · 0 评论 -
Python 剑指offer 【19】:和为S的两个数字
题目描述:代码:class Solution(object): #使用双指针 def twoSum(self, nums, target): head,tail=0,len(nums)-1 #当尾指针小于头指针时结束 while head<=tail: #尾指针大于目标,减小 if nums[tail]>target: tail-=1原创 2020-08-24 09:47:09 · 103 阅读 · 0 评论 -
Python 剑指offer 【18】:数组中重复的数字
题目描述:代码:#使用数组class Solution(object): def findRepeatNumber(self, nums): dict=[] for num in nums: if num in dict : return num dict.append(num)#使用集合class Solution(object): def find.原创 2020-08-24 09:31:03 · 108 阅读 · 0 评论 -
Python 剑指offer【17】:数组中出现次数超过一半的个数
题目描述:代码:class Solution(object): def majorityElement(self, nums): #数组只有一个数据时直接返回 if len(nums)==1: return nums[0] #字典存储列表数字出现的个数 dict={} for i in nums: if i not in dict.keys():原创 2020-08-23 10:13:41 · 127 阅读 · 0 评论 -
Python 剑指offer【16】:二叉搜索数最近公共祖先
题目描述:代码:# Definition for a binary tree node.# class TreeNode(object):# def __init__(self, x):# self.val = x# self.left = None# self.right = Noneclass Solution(object): #利用二叉搜索树的性质,两个值小于根节点在左树,都大于在右树,一大一小在根两侧原创 2020-08-23 09:53:30 · 128 阅读 · 0 评论 -
Python 剑指offer【15】:从上到下打印二叉树
题目描述:代码:# Definition for a binary tree node.# class TreeNode(object):# def __init__(self, x):# self.val = x# self.left = None# self.right = Noneclass Solution(object): def levelOrder(self, root): if not原创 2020-08-23 09:18:21 · 132 阅读 · 0 评论 -
Python 剑指offer 【14】:和为S的连续正数列
题目描述:代码:class Solution(object): def findContinuousSequence(self, target): #采用滑动窗口法来取数组 head=1 #滑动窗口头 tail=0 #滑动窗口尾 sum=0 result=[] while head < (target//2)+1 : if sum < target: #总原创 2020-08-22 09:39:34 · 133 阅读 · 0 评论 -
Python 剑指offer 【12】:二叉树的最近公共祖先
题目描述:代码:class Solution(object): #递归遍历二叉树 def lowestCommonAncestor(self, root, p, q): #如果递归超过边界,或者root等于pq则返回 if not root or root == p or root == q:return root left = self.lowestCommonAncestor(root.left,p,q) right原创 2020-08-21 10:30:38 · 139 阅读 · 0 评论 -
Python 剑指offer 【12】:二进制中一的个数
题目描述:代码:class Solution(object): #汉明距离==》异或后一的个数 def hammingWeight(self, n): return bin(n^0).count('1')原创 2020-08-21 09:57:54 · 124 阅读 · 0 评论 -
Python 剑指offer 【11】:用两个栈实现队列
题目描述:代码:class CQueue(object): def __init__(self): #构造两个列表,列表B倒序存储列表A self.A=[] self.B=[] def appendTail(self, value): #添加元素 self.A.append(value) def deleteHead(self): if self.B:原创 2020-08-21 09:48:41 · 102 阅读 · 0 评论 -
Python 剑指offer 【10】:合并两个有序数组
题目描述:代码:# Definition for singly-linked list.# class ListNode(object):# def __init__(self, x):# self.val = x# self.next = Noneclass Solution(object): def mergeTwoLists(self, l1, l2): merValue=ListNode(0)原创 2020-08-20 09:38:42 · 108 阅读 · 0 评论 -
Python 剪枝offer 【9】:二叉树的第K大节点
题目描述:代码:# Definition for a binary tree node.# class TreeNode(object):# def __init__(self, x):# self.val = x# self.left = None# self.right = Noneclass Solution(object): def kthLargest(self, root, k): sel原创 2020-08-20 09:20:55 · 113 阅读 · 0 评论 -
Python 剑指offer【8】:反转链表
题目描述:代码:# Definition for singly-linked list.# class ListNode(object):# def __init__(self, x):# self.val = x# self.next = Noneclass Solution(object): def reverseList(self, head): head=head tail=None原创 2020-08-19 14:47:58 · 57 阅读 · 0 评论 -
Python 剑指offer【7】:从尾到头打印链表
题目描述:代码:# Definition for singly-linked list.# class ListNode(object):# def __init__(self, x):# self.val = x# self.next = Noneclass Solution(object): def reversePrint(self, head): result=[] if head == Non原创 2020-08-19 14:35:45 · 79 阅读 · 0 评论 -
Python 剑指offer【6】:替换空格
题目描述:代码:class Solution(object): def replaceSpace(self, s): list=s.split(" ") s='' for i in range(len(list)-1): s+=list[i] s+='%20' s+=list[len(list)-1] return s原创 2020-08-19 14:21:36 · 72 阅读 · 0 评论 -
Python 剑指offer【5】:打印1到最大的n位数
题目描述:代码:class Solution(object): def printNumbers(self, n): list=[] for i in range(1,10**n): list.append(i) return list原创 2020-08-18 14:17:32 · 98 阅读 · 0 评论 -
Python 剑指offer【4】:二叉树镜像
题目描述:代码:class Solution(object): def mirrorTree(self, root): #递归调用,将二叉树左节点复制给右节点 if root == None: return root temp_point=root.right root.right=self.mirrorTree(root.left) root.left=self.mirrorTre原创 2020-08-18 10:52:51 · 102 阅读 · 0 评论 -
Python 剑指offer【3】:链表中倒数第K个数
题目描述:代码:class Solution(object): def getKthFromEnd(self, head, k): index_head,index_tail=head,head #如果链表为None或者K为负值,则返回None if head == None or k<=0: return None for i in range(k): #如果在K的范围内,链表为原创 2020-08-18 10:42:58 · 106 阅读 · 0 评论 -
Python 剑指offer【2】:二叉树的深度
题目描述:代码:class Solution(object): def maxDepth(self, root): if root==None: return 0 #如果到底就返回0 return max(self.maxDepth(root.left),self.maxDepth(root.right))+1#取左右子树的最大值+1即为根树的深度...原创 2020-08-18 10:20:31 · 77 阅读 · 0 评论 -
python 剑指offer【1】:左旋转字符串
题目描述:代码:class Solution(object): def reverseLeftWords(self, s, n): result=[""]*len(s) #创建数组存储字符串元素 for i in range(len(s)): if i<n: result[len(s)-n+i]=s[i]#将要旋转的字符串元素赋值到数组后半部分 else:原创 2020-08-18 09:54:48 · 122 阅读 · 0 评论 -
leetcode Top100: 相交链表
# Definition for singly-linked list.# class ListNode(object):# def __init__(self, x):# self.val = x# self.next = Noneclass Solution(object): def getIntersectionNode(self, headA, headB): if headA == None or headB == ...原创 2020-08-15 16:00:07 · 88 阅读 · 0 评论 -
leetCode Top100:找到数组中消失的数字
class Solution(object): def findDisappearedNumbers(self, nums): for i in range(len(nums)): index=abs(nums[i])-1 if nums[index]>0: nums[index]*=-1 result=[] for i in range(1,len(nums)...原创 2020-08-15 15:38:01 · 114 阅读 · 0 评论 -
leetCode Top100:二叉搜索树转变为累加树
# Definition for a binary tree node.# class TreeNode(object):# def __init__(self, x):# self.val = x# self.left = None# self.right = Noneclass Solution(object): def __init__(self): self.total=0 def conve...原创 2020-08-15 15:12:31 · 72 阅读 · 0 评论 -
LeetCode Top100:合并两个有序数组
# Definition for singly-linked list.# class ListNode(object):# def __init__(self, val=0, next=None):# self.val = val# self.next = nextclass Solution(object): def mergeTwoLists(self, l1, l2): if l1==None and l2==None:...原创 2020-08-15 14:52:27 · 107 阅读 · 0 评论 -
Leetcode Top100:移动0
class Solution(object): def moveZeroes(self, nums): count=0 for i in range(len(nums)): if nums[i]==0: count+=1 else: nums[i-count]=nums[i] for j in range(len(nums)-1,len...原创 2020-08-13 09:20:48 · 90 阅读 · 0 评论 -
Leetcode Top100:多数元素
class Solution(object): def majorityElement(self, nums): dict={} if len(nums)==1: return nums[0] for i in range(len(nums)): name_list=list(dict.keys()) if nums[i] not in name_list: ...原创 2020-08-12 09:24:18 · 94 阅读 · 0 评论 -
LeetCode Top100:只出现一次数字
class Solution(object): def singleNumber(self, nums): num=[] for i in range(len(nums)): if nums[i] in num: num.remove(nums[i]) else: num.append(nums[i]) return num[0]...原创 2020-08-10 11:19:24 · 90 阅读 · 0 评论 -
LeetCode Top100:反转链表
class Solution(object): def reverseList(self, head): pre=None temp=ListNode() while head: temp=head.next head.next=pre pre=head head=temp return pre原创 2020-08-10 10:43:54 · 96 阅读 · 0 评论 -
Leetcode Top100:计算二叉树深度
class Solution(object): def maxDepth(self, root): if not root: return 0 return max(self.maxDepth(root.left),self.maxDepth(root.right))+1原创 2020-08-10 10:24:52 · 135 阅读 · 0 评论 -
LeetCode Top100:反转二叉树
class Solution(object): def invertTree(self, root): if not root: return root temp=TreeNode() temp.left=root.left root.left=root.right root.right=temp.left self.invertTree(root.left) ...原创 2020-08-10 10:09:24 · 102 阅读 · 1 评论 -
window pip 错误:Could not fetch URL https://pypi.org/simple/pillow/: There was a problem
window pip 安装第三方库时SSL出错:解决方案:在安装库时加入国内镜像文件:例:pip install pillow -i http://pypi.douban.com/simple --trusted-host pypi.douban.com其他镜像: 阿里云:http://mirrors.aliyun.com/pypi/simple/豆瓣:http://pypi.douban.com/simple/清华:https://pypi.tuna.tsinghua.edu.原创 2020-08-08 16:36:52 · 477 阅读 · 0 评论 -
LeetCode刷题之路:合并两个有序数组
题目:给你两个有序整数数组nums1 和 nums2,请你将 nums2 合并到nums1中,使 nums1 成为一个有序数组。说明:初始化 nums1 和 nums2 的元素数量分别为 m 和 n 。你可以假设 nums1 有足够的空间(空间大小大于或等于 m + n)来保存 nums2 中的元素。示例:输入:nums1 = [1,2,3,0,0,0], m = 3nums2 = [2,5,6], n = 3输出: [1,2,2,3,5,6]来源链接:h...原创 2020-07-13 14:48:05 · 150 阅读 · 0 评论 -
LeetCode刷题之路:删除排序数组中的重复项
题目:给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成来源链接:https://leetcode-cn.com/problems/remove-duplicates-from-sorted-array实例:给定数组 nums = [1,1,2],函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。你.原创 2020-07-12 18:44:58 · 110 阅读 · 0 评论 -
LeetCode刷题之路:最长连续递增数列
题目:给定一个未经排序的整数数组,找到最长且连续的的递增序列,并返回该序列的长度。示例:输入: [1,3,5,4,7]输出: 3解释: 最长连续递增序列是 [1,3,5], 长度为3。尽管 [1,3,5,7] 也是升序的子序列, 但它不是连续的,因为5和7在原数组里被4隔开。来源链接:https://leetcode-cn.com/problems/longest-continuous-increasing-subsequence。代码:class Solutio..原创 2020-07-12 18:32:34 · 414 阅读 · 0 评论