自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(43)
  • 问答 (3)
  • 收藏
  • 关注

原创 检查Windows系统路径中是否已经安装Powershell

1、打开命令提示符(Command Prompt)

2023-03-22 10:01:52 1063 1

原创 算法练习 剑指Offer全解 python

在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个高效的函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。需要的信息有:从前序序列中找到根节点的值、中序序列中左子树的左边界、中序序列中右子树的左边界。根据根节点的值,找到根节点在中序序列中的位置(提前构造好{值:位置}的dict)根据左右子树的边界信息,递归的对其左右子树进行上述操作。

2022-10-24 22:27:09 560

原创 算法练习——柱状图中最大的矩形 leetcode.80 python

而对于左右柱子或其本身有边界问题的柱子,我们需要将左侧边界标记为-1,以0号柱子为例,右边首个比他矮的是1号柱子,它的面积计算方法为:(1-(-1)-1)*height[0],这是符合常识的;因为既然他们满足了比4号高的判断条件,那么要判断序号大于4号的柱子的左侧首个比他矮的柱子时,如果2号、3号满足,那4号一定满足,且4号比2、3号更能接近“首个”这一条件;以3号柱子为例,它的左边首个比他矮的是2号柱子,右边首个比他矮的是4号柱子,以他开始画矩形的面积计算方法为:(4-2-1)* height[3]

2022-10-21 17:06:30 519

原创 算法练习——二叉树展开为链表 leetcode.114 python

由于在定义节点时已经默认左右指针指向None,故在恢复成链表结构时,不用单独处理最后一个节点(处理反而要单独判断输入为[]的情况)展开后的单链表应该同样使用 TreeNode ,其中 right 子指针指向链表中下一个结点,而左子指针始终为 null。展开后的单链表应该与二叉树 先序遍历 顺序相同。

2022-10-21 10:52:28 303

原创 [N诺] 浙江大学历年机试题解

当读到 N=0 时,全部输入结束,相应的结果不要输出。随后的 N(N-1)/2 行对应村庄间道路的成本及修建状态,每行给4个正整数,分别是两个村庄的编号(从1编号到N),此两村庄间道路的成本,以及修建状态:1表示已建,0表示未建。有n个集合(初始有n个点,一个点独自成一个集合),先选出一条最短的边,假设它属于集合u,然后从跟它邻接的边中选出一条最短的且不与集合u中已经存在的边形成回路的边,合并到集合u中,再从非u集合中选出一条与集合u中的边邻接且距离最短的边,加入到集合u中,以此类推。

2022-10-01 11:23:51 1258

原创 [N诺] 复旦大学历年上机题解

如果能从五个整数中选出三个并且这三个整数的和为10 的倍数(包括 0),那么这五个整数的权值即为剩下两个没被选出来的整数的和对 10 取余的结果,显然如果有多个三元组满足和是 10 的倍数,剩下两个数之和对 10 取余的结果都是相同的;即dp[i][j] = d[i-1][j] +dp[i-1][j-num[i]] ,其中 dp[i-1][j]表示不装,也就是选择了负值,dp[i-1][j-num[i]] 表示装,也就是选择了原值。有2*n 的地板,用1*2和 2*1 的骨牌进行铺地板。

2022-09-16 21:42:42 1160

原创 解决警告:X does not have valid feature names, but SGDClassifier was fitted with feature names

UserWarningXdoesnothavevalidfeaturenames,butSGDClassifierwasfittedwithfeaturenames原因是输入的数据是array格式,应该使用pd.DataFrame方法转为dataframe格式报错解决!

2022-07-31 17:55:23 12976

原创 解决字母输入异常问题:编译器输入的字母突然变了字体

编译器输入的字母突然变了字体 按Shift+空格恢复即可。

2022-07-24 11:04:37 546

原创 解决报错:无法建立到笔记本服务器的连接。我们会继续尝试重连。请检查网络连接还有服务配置

zJupyterNotebook更改kernel时出现服务连接问题到后台服务的连接没能建立,我们会继续尝试重连,请检出网络连接...还有服务配置_一枚小白的日常的博客-CSDN博客https//blog.csdn.net/Smile_mingm/article/details/104915700。解决jupyternotebook打开后文件太多过卡、卡顿的问题;创建jupyter工作路径/文件夹_douerw的博客-CSDN博客_jupyternotebook卡顿。...

2022-07-22 20:59:23 10598 1

原创 [N诺] 动态规划算法练习题合集

动态规划类题目解题步骤:1、定义数组元素的含义2、找出数组元素之间的关系式3、找出初始值1.最大序列和给出一个整数序列S,其中有N个数,定义其中一个非空连续子序列T中所有数的和为T的“序列和”。 对于S的所有非空连续子序列T,求最大的序列和。 变量条件:N为正整数,N≤1000000,结果序列和在范围(-2^63,2^63-1)以内。2.最长连续公共子序列输入两个字符串s1,s2。输出最长连续公共子串长度和最长连续公共子串。3.最长公共子序列输入两个字符串s1,s2。输出最长连续公共子串长度和最

2022-07-10 20:51:14 494

原创 [N诺] 华中科技大学历年机试题解

1、01序列对于长度为6位的一个01串,每一位都可能是0或1,一共有64种可能。它的前几个是:000000000001000010000011000100请按从小到大的顺序输出这64种01串。2、 矩阵转置输入一个N*N的矩阵,将其转置后输出。要求:不得使用任何数组(就地逆置)。3、8进制输入一个整数,将其转换成八进制数输出。注意在机试中处理连续输入4、统计单词编一个程序,读入用户输入的,以“.”结尾的一行文字,统计一共有多少个单词,并分别输出每个单词含有多少个字符。 (凡是以

2022-07-10 11:41:34 1469

原创 算法练习——最长子数组和 leetcode.53 python

题目描述:给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。子数组 是数组中的一个连续部分。C语言的解法可以参考 @weiambt 的这篇文章。连续子数组的最大和问题(五种解法)_weiambt的博客-CSDN博客https://blog.csdn.net/Supreme7/article/details/117398880思路一:暴力穷举class Solution: def maxSubArray(self, nums

2022-05-10 21:17:57 520

原创 算法练习——字符串相加 leetcode.415 python

题目描述:给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和并同样以字符串形式返回。你不能使用任何內建的用于处理大整数的库(比如 BigInteger), 也不能直接将输入的字符串转换为整数形式。思路分析:模拟竖式加法从num1和num2的最低位开始计算,计算 x + y + carry,carry记录每轮计算自低位的进位。对于长度不一的字符串,要用0补齐。class Solution: def addStrings(self,num1,num2):.

2022-05-09 15:12:15 241

原创 算法练习——有效的括号 leetcode.20 python

给定一个只包括 '(',')','{','}','[',']' 的字符串 s ,判断字符串是否有效。有效字符串需满足:1.左括号必须用相同类型的右括号闭合。2.左括号必须以正确的顺序闭合。

2022-05-08 10:57:30 226

原创 算法练习——汉明距离 leetcode.461 python

题目描述:两个整数之间的汉明距离指的是这两个数字对应二进制位不同的位置的数目。给你两个整数x和y,计算并返回它们之间的汉明距离解法一:关键在于将x、y转化为等长二进制位class Solution: def hammingDistance(self,x,y): cnt = 0 temp = 0 # [2:]的目的是去掉0b,[::-1]的目的是逆置数组,使得低位重合 x = list(bin(x))[2:][...

2022-05-08 10:23:11 559

原创 算法练习——比特位计数 leetcode.338 python

题目描述:给你一个整数 n ,对于 0 <= i <= n 中的每个 i ,计算其二进制表示中 1 的个数 ,返回一个长度为 n + 1 的数组 ans 作为答案。思路一:将每个数的二进制看成字符串,遍历每个字符串,统计"1"的个数class Solution: def countBits(self, n): res = [] for i in range(0,n+1): cnt = 0 s =

2022-05-07 09:44:31 333

原创 算法练习——只出现一次的数字 leetcode.136 python

题目描述:给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。思路一:哈希表class Solution: def singleNumber(self,nums): dic = dict() for i in nums: if i not in dic: dic[i] = 1 else: dic

2022-05-07 09:15:15 310

原创 python 实现数据结构八种内部排序算法

排序算法 python 一、插入排序二、希尔排序三、冒泡排序四、快速排序五、选择排序六、堆排序七、归并排序八、基数排序

2022-05-05 17:54:44 1239

原创 算法练习——翻转二叉树 leetcode 226 python

题目描述:给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。递归求解:class Solution: def invertTree(self, root): if not root: return None self.invertTree(root.left) self.invertTree(root.right) # def swap(left, right): .

2022-04-27 20:11:40 1167

原创 算法练习——平衡二叉树 leetcode 110

题目描述:给定一个二叉树,判断它是否是高度平衡的二叉树。本题中,一棵高度平衡二叉树定义为:一个二叉树每个节点的左右两个子树的高度差的绝对值不超过 1 。参考解答:Leetcode 110:平衡二叉树(最详细的解法!!!)_coordinate_blog的博客-CSDN博客_110. 平衡二叉树https://blog.csdn.net/qq_17550379/article/details/82081501?ops_request_misc=%257B%2522request%25.

2022-04-26 22:31:54 477

原创 算法练习——二叉树的最大深度 leetcode.104 python

题目描述:给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。说明: 叶子节点是指没有子节点的节点。题目求解:递归求解:# Definition for a binary tree node.class TreeNode: def __init__(self, val=0, left=None, right=None): self.val = val self.left = left se

2022-04-26 21:18:29 647

原创 算法练习——对称二叉树 leetcode.101 python

题目描述:给你一个二叉树的根节点root, 检查它是否轴对称。递归求解:class TreeNode: def __init__(self, val=0, left=None, right=None): self.val = val self.left = left self.right = rightclass Solution: def isSymmetric(self, root): if not ro..

2022-04-26 09:50:01 1269 2

原创 算法练习——二叉树的中序、先序、后序遍历 leetcode.94 144 145 python

题目描述:给定一个二叉树的根节点 root ,返回 它的 中序 遍历 。代码实现(递归):# 定义树的数据结构class TreeNode: def __init__(self, val=0, left=None, right=None): self.val = val self.left = left self.right = rightclass Solution: def inorderTraversal(self,

2022-04-24 09:51:14 1775

原创 C语言 七阶魔方阵

题目描述:用数组实现7阶魔方矩阵。所谓的N阶魔方矩阵是指把1~N*N的自然数按一定方法排列成N*N的矩阵,使得:任意行、任意列以及两个对角线上的数之和都相等(N为奇数)。例如下面的5阶魔方矩阵,任意行、任意列以及两个对角线上的数之和都为65。5阶魔方如下:17 24 1 8 1523 5 7 14 164 6 13 20 2210 12 19 21 311 18 25 2 9奇数阶魔方矩阵的算法如下:第1步:将1放入第一行的正中处。第2步:按如下的方法依次将第i个数(i从2到N*N)

2022-04-17 20:26:17 2138

原创 C语言 指针学习笔记

C语言指针汇总整理 学习笔记

2022-04-16 21:15:04 789

原创 解决报错:The allowed values for a DataFrame are True, False, 0, 1.

在练习apriori算法时出现的错误,用此文章大佬所给的数据集时没有报错,而用自己的数据集时报错了。没有查到这个报错的其他博客。机器学习—关联规则分析之Apriori算法及其python实现_哎呦-_-不错的博客-CSDN博客_apriori算法https://blog.csdn.net/weixin_46649052/article/details/115385998错误的原因是没有保证项集中的每一笔交易是均为一个集合,即里面的元素不能重复。我们是在计算对唐诗分词后的数据集进行apriori时

2022-04-11 15:43:31 3184 4

原创 C语言 分数加减法(输出最简形式)

题目描述:​​​​请进行程序设计,以最简形式输出两个分数的加减运算结果。1)输入包含多组测试数据,每组数据占一行,每行数据是一个字符串,格式为:"a/boc/d"。其中a, b, c, d是一个0-9的整数。o是运算符"+"或者"-"。2)输入数据保证合法并且以EOF结束 (CTRL+Z键)对于输入数据的每一行,输出两个分数的运算结果。3)注意结果应符合书写习惯,没有多余的符号、分子、分母,并且化简至最简分数样例输入:1/8+3/81/4-1/21/3-1/3样例输出:1/2-

2022-04-02 20:10:11 8300 3

原创 解決报错: ‘utf-8‘ codec can‘t decode byte 0x87 in position 10: invalid start byte

在导入某csv文件时出现的错误:解决方案:步骤一:将出现编码问题的csv文件后缀名改为txt步骤二:打开txt文件 我们可以在右下角发现现在文件的编码方式是ANSI步骤三: 点击另存为,改变编码方式,替换原文件即可。步骤四:将后缀名改回.csv大功告成!...

2022-03-18 21:40:07 18948 3

原创 算法练习——字符串解码 leetcode.394 python

题目描述:给定一个经过编码的字符串,返回它解码后的字符串。编码规则为: k[encoded_string],表示其中方括号内部的 encoded_string 正好重复 k 次。注意 k 保证为正整数。附上一个更详细的解答,也是本文学习的方法:LeetCode 394. 字符串解码 | Python_"大梦三千秋的博客-CSDN博客_leetcode394根据栈先入后出的特性,来解决《394. 字符串解码》问题https://blog.csdn.net/weixin_45642918/art

2022-03-18 16:18:05 1341

原创 算法练习——用栈实现队列 leetcode.232 python

题目描述:请你仅使用两个栈实现先入先出队列。队列应当支持一般队列支持的所有操作(push、pop、peek、empty):实现 MyQueue 类:void push(int x) 将元素 x 推到队列的末尾int pop() 从队列的开头移除并返回元素int peek() 返回队列开头的元素boolean empty() 如果队列为空,返回 true ;否则,返回 false题前准备:栈的基础操作:class Stack: def __init__(self):

2022-03-18 01:00:44 718

原创 算法练习——回文链表 leetcode.234 python

题目描述:给你一个单链表的头节点 head ,请你判断该链表是否为回文链表。如果是,返回 true ;否则,返回 false 。方法一:将链表的值转化为一个数组。两个指针从数组的首尾分别开始移动,在相遇之前,如果值一旦不等,则不是回文列表。class Solution: def isPalindrome(self, head: ListNode) -> bool: p = head lst = [] while p:

2022-03-11 16:33:21 1636

原创 算法练习——相交链表 leetcode.206 python

题目描述:给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回 null 。思路一:极度暴力法把A链表毁掉(譬如断链),当B走不通的时候,说明已经到了与A的公共部分。注意,函数返回结果后,链表必须 保持其原始结构 。思路二:暴力法对于A中的每一个节点,与B中的每个结点相比,循环结束的条件是(A.next == B.next) ,A指针和B指针指向同一个结点——找到了相交点。思路三:hash表优化cla

2022-03-09 22:25:57 794

原创 算法练习——反转链表 leetcode.206 python

题目描述:给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。思路:对于要反转的结点B 链表A →B→C怎么变成 A ← B C呢四步走!①nextNode = CurrNode.next记录B的next(即C)的地址,否则链表一旦断掉(B→A),没人指向C,就找不到C的地址了②CurrNode.next = preNode让B指向A③preNode = CurrNode这时候B成为C的前一个结点 准备被C指向④CurrNode = nextN..

2022-03-09 19:51:55 596

原创 算法练习——判断链表是否有环(二) leetcode.142 python

算法练习——判断链表是否有环 leetcode.141 python_tangchujiang的博客-CSDN博客https://blog.csdn.net/tangchujiang/article/details/123355082?spm=1001.2014.3001.5501上题的姊妹篇题目描述:给定一个链表的头节点 head ,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。解法一:哈希表# class ListNode:# def __init__(se

2022-03-09 14:51:08 167

原创 算法练习——判断链表是否有环 leetcode.141 python

题目描述:给你一个链表的头节点 head ,判断链表中是否有环。如果链表中存在环 ,则返回 true 。 否则,返回 false 。方法一:hash表hashset是一种特殊的hashmap,可以理解为只有key的map。python语言的set(集合)自带去重功能(集合元素的唯一性)。# 哈希表 O(m+n)class Solution: def hasCycle(self, head: ListNode) -> bool: if head == No

2022-03-08 16:08:38 1031

原创 算法练习——删除列表中的重复元素 leetcode.83 python

题目描述:给定一个已排序的链表的头 head , 删除所有重复的元素,使每个元素只出现一次 。返回 已排序的链表 。# Definition for singly-linked list.class ListNode: def __init__(self, val=0, next=None): self.val = val self.next = nextclass Solution: def deleteDuplicates(self, head:

2022-03-06 23:32:52 447

原创 算法练习——合并有序列表 leetcode.21 python

题目描述:将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。方法一:双指针(三指针)class ListNode: # 单链表的结点 def __init__(self, val=0, next=None): self.val = val self.next = nextclass Solution: def mergeTwoLists(self, l1: ListNode, l2: ListN

2022-03-06 10:43:01 484

原创 算法练习——消失的数字 leetcode.448 python

题目描述:给你一个含 n 个整数的数组 nums ,其中 nums[i] 在区间 [1, n] 内。请你找出所有在 [1, n] 范围内但没有出现在 nums 中的数字,并以数组的形式返回结果。方法一:hash表def findDisappearedNumbers(nums): n = len(nums) hash_dic = dict() lst = [] # 以下为建立hash表的过程 for i in range(0,n): has

2022-03-04 22:30:02 246

原创 算法练习——移动零 leetcode.283 python

题目描述:给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。请注意 ,必须在不复制数组的情况下原地对数组进行操作。方法一:暴力双重循环 i j两个指针一前一后进行交换排序 if len(nums) == 1: return nums i = 0 j = 1 k = 0 while k <= len(nums): while i < len(nums)-1: ..

2022-03-04 21:21:15 345

原创 算法练习——合并数组 leetcode.88 python

题目描述:给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 nums1 和 nums2 中的元素数目。请你 合并 nums2 到 nums1 中,使合并后的数组同样按 非递减顺序 排列。注意:最终,合并后数组不应由函数返回,而是存储在数组 nums1 中。为了应对这种情况,nums1 的初始长度为 m + n,其中前 m 个元素表示应合并的元素,后 n 个元素为 0 ,应忽略。nums2 的长度为 n 。方法一:将nums2和nums1

2022-03-04 15:41:17 1006

空空如也

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

TA关注的人

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