- 博客(37)
- 收藏
- 关注
原创 Python函数参数传递
参数传递Python中,参数类型属于对象,变量是没有类型的。如:a = ‘Python’'Python’对象是String类型,变量a没有类型,它仅仅是一个指针。可更改对象和不可更改对象Python中,Strings、Tuples、Numbers(包含int、long、float、complex复数)是不可更改对象,而Lists、Dicts是可更改对象。不可变类型:如变量赋值a = 10,之后再赋值a = 15,实际是新生成了一个int对象15,再让a指针指向它,而10被丢弃,不是改变a的
2021-11-28 17:28:54
735
原创 Python socket模块
Socket(套接字) =IP地址:端口号,在网络层通过IP地址找到主机,在传输层通过端口号找到应用进程。每一个传输层连接唯一的被通信两端的两个套接字所确定。python中,通过socket()函数创建套接字,socket()函数语法格式:socket.socket([family[, type[, proto]]])其中的参数:family:套接字家族可以使 AF_UNIX 或者 AF_INET(IPv6用AF_INET6)。type:套接字类型,(TCP)SOCK_STR..
2021-09-25 15:56:18
1810
原创 位1的个数 Python3
题解一:class Solution: def hammingWeight(self, n: int) -> int: return str(bin(n)).count('1')但这里暂时没用到微操作,还可以继续学习优化。
2021-09-25 00:22:19
275
原创 两数之和ll - 输入有序数组Python3
题解一:class Solution: def twoSum(self, numbers: List[int], target: int) -> List[int]: dic = {} for i in range(len(numbers)): dic[numbers[i]] = i for i in range(len(numbers)): j = target - nu...
2021-09-23 00:12:08
258
原创 反转字符串Python3
题解:class Solution: def reverseString(self, s: List[str]) -> None: """ Do not return anything, modify s in-place instead. """ # 定义左右指针 left = 0 right = len(s)-1 # 当左指针小于右指针时,继续循环 w...
2021-09-22 23:32:14
216
原创 环形链表ll Python3
题解:# Definition for singly-linked list.# class ListNode:# def __init__(self, x):# self.val = x# self.next = Noneclass Solution: def detectCycle(self, head: ListNode) -> ListNode: fast = slow = head ...
2021-09-21 23:09:35
95
原创 环形链表Python3
题解:# Definition for singly-linked list.# class ListNode:# def __init__(self, x):# self.val = x# self.next = Noneclass Solution: def hasCycle(self, head: ListNode) -> bool: fast = slow = head while...
2021-09-21 13:34:16
178
原创 翻转二叉树Python3
题解:# Definition for a binary tree node.# class TreeNode:# def __init__(self, val=0, left=None, right=None):# self.val = val# self.left = left# self.right = rightclass Solution: def invertTree(self, root: TreeNode...
2021-09-20 11:21:02
222
原创 旋转数组Python3
题解:class Solution: def rotate(self, nums: List[int], k: int) -> None: """ Do not return anything, modify nums in-place instead. """ left = nums[len(nums)-k%len(nums):] right = nums[:len(nums)-k%len(num...
2021-09-19 00:16:44
182
原创 加一Python3
题解:import reclass Solution: def plusOne(self, digits: List[int]) -> List[int]: s = re.findall(r'.{1}', str(int(''.join(str(i) for i in digits))+1)) return [int(i) for i in s]例如有个列表[1, 2, 9],那么解题的思路步骤如下:①把列表中的数字元素转成字符型,...
2021-09-17 23:49:04
178
原创 只出现一次的数字Python3
题解一:class Solution: def singleNumber(self, nums: List[int]) -> int: # nums非空,若只有一个元素就直接返回 if len(nums) == 1: return nums[0] # 对列表nums进行排序 li = sorted(nums) # 若列表第一个元素和第二个不相等,则必然是第一个元...
2021-09-15 23:55:50
306
原创 两数之和Python3
题解一:暴力穷举法class Solution: def twoSum(self, nums: List[int], target: int) -> List[int]: for i in range(len(nums)-1): for j in range(1, len(nums)): if nums[i] + nums[j] == target and i != j: ...
2021-09-15 00:06:54
540
1
原创 存在重复元素Python3
题解:class Solution: def containsDuplicate(self, nums: List[int]) -> bool: # 1.先排序 new_nums = sorted(nums) # 2.定义一个flag,默认值为false flag = False # 3.遍历排过序的新列表,如果相邻元素有相同的,则flag置为true for i in range(...
2021-09-13 23:47:17
150
原创 移动零Python3
题解:class Solution: def moveZeroes(self, nums: List[int]) -> None: """ Do not return anything, modify nums in-place instead. """ slow = fast = 0 while fast<len(nums): if nums[fast] != 0: ...
2021-09-13 21:40:42
119
原创 移除元素Python3
题解:class Solution: def removeElement(self, nums: List[int], val: int) -> int: slow = fast = 0 while fast<len(nums): # 若快指针找到要删除的元素,就直接跳过; # 否则,要把快指针指向的元素赋值给慢指针指向的元素,去覆盖掉, # 然后慢指针向前一步走...
2021-09-13 21:13:34
149
原创 删除排序链表中的重复元素Python3
题解:class Solution: def deleteDuplicates(self, head: ListNode) -> ListNode: if head == None: return None slow = fast = head # 如果快指针没有走到链表尾部节点之后,则一直循环 while fast != None: if fast.val != s...
2021-09-12 23:48:31
211
原创 删除有序数组中的重复项Python3
题解:class Solution: def removeDuplicates(self, nums: List[int]) -> int: if len(nums) == 0: return 0 slow = fast = 0 while fast < len(nums): if nums[slow] != nums[fast]: slow...
2021-09-12 20:22:30
1096
原创 牛客网HJ21 简单密码Python3解法
题目:题目分析:密码字符串组成字符主要分成三种:大写字母、小写字母、非字母,处理方式如下:①大写字母,要先转成小写,再往后移一位;(注意,'Z'转成'z',后移一位是'a')②小写字母,转成手机上九宫格对应的数字;③非字母,不做处理。解题方法:n = input()li = []for i in n: if 'A'<=i<'Z': li.append(chr(ord(i.lower())+1)) elif i == 'Z':.
2021-09-12 09:01:05
332
原创 牛客网HJ14 字符串排序Python3解法
题目:示例一:9captocatcardtwotooupboatboot输出:boatbootcapcardcattotootwoup解题方法:n = int(input())li = []# 循环接收n个字符串,并添加到列表li里for i in range(n): li.append(input()) # 将列表li重新排序,并依次输出for i in sorted(li): print(i)...
2021-09-10 23:45:53
214
原创 牛客网HJ10 字符个数统计Python3解法
题目:解题方法:s = input()# 创建一个列表lili = []for i in s: # 对字符串s进行逐个字符检查, # 如果字符对应ascii码值不在列表li里,并且在0~127之间,就加进列表li里,否则不操作 if ord(i) not in li and 0<=ord(i)<=127: li.append(ord(i))print(len(li))ord()方法:使用ord('a')方法可查出字符a的asc..
2021-09-10 23:32:08
262
1
原创 牛客网HJ9 提取不重复的整数Python3解法
解法:n = input()# 先将输入字符逆序翻转一下,再int()转成整型去掉n末尾可能有的0,再str()转回字符型s = str(int(n[::-1]))li = []for i in s: # 判断字符串s里是否已有某个字符,没有则加到列表里并打印,有则直接跳到下一个字符 # 用于数字去重 if i not in li: li.append(i) print(i, end='')...
2021-09-08 22:36:35
265
原创 牛客网HJ8 合并表记录Python3解法
题目:解题方法:n = int(input())dic = {}# 接收输入的n组键值对for i in range(n): index = input().split(' ') key = int(index[0]) value = int(index[1]) # 判断列表里是否已有新接收输入的key,没有则加到列表里,有则将值叠加 if key not in dic: dic[key] = value else:..
2021-09-08 00:21:05
377
原创 牛客网HJ12 字符串反转Python3解法
解法一:n = input()print(''.join(reversed(n)))解法二:n = input()print(n[::-1])题目类型和上一题“HJ11 数字颠倒”差不多,方法相关介绍见:https://blog.youkuaiyun.com/qq_29349463/article/details/120115446?spm=1001.2014.3001.5501...
2021-09-05 23:12:42
183
原创 牛客网HJ11 数字颠倒Python3 解法
解法一:n = int(input())print(''.join(reversed(str(n))))解法二:n = int(input())print(str(n)[::-1])涉及到的一些方法:join(): s.join(seq)表示用s字符来连接seq里的多个元素。seq = ['r', 'u', 'n']print('-'.join(seq))# 输出:r-u-nprint(''.join(seq))# 输出:runreverse():将...
2021-09-05 15:54:49
474
原创 牛客网HJ15 求int型正整数在内存中存储时1的个数Python3解法
一开始的解法:n = int(input())# 切片去掉二进制数前面的"0b",比如n=5,bin(n)就是'0b101',去掉'0b'就是'101's = bin(n)[2:]c = 0for i in range(len(s)): if s[i] == '1': c += 1print(c)python切片需要注意的地方:①str[-1]表示取字符串最后一个字符;而str[:-1]表示取除了字符串最后一个字符以外的所有字符,不包括最后一个字符...
2021-09-05 14:56:50
255
原创 牛客网HJ7 取近似值Python3解法
刚开始的解法:n = float(input())# 将n乘以10,再对10取余,看余数是小于5则直接用int(),否则+1if int(10 * n) % 10 < 5: n = int(n)else: n = int(n)+1print(n)看了下排行榜前几的方法,直接对n+0.5,再取整;想了下,如果n小数部分小于5,比如4.4,那么加0.5之后不会大于5,取整是4,如果n小数部分大于等于5,比如4.5,那么加0.5之后大于等于5,取整是5。...
2021-09-04 10:17:17
238
原创 牛客网HJ6 质数因子Python3解法
题目介绍:解题思路:1.暴力破解,时间复杂度高就是从2一直除到N-1,每次能整除,则把整除后的商重新赋值给N。但是执行的时间复杂度O(n),当质数比较大,如10007时,效率就太低了。2.试除法求一个数N的质数因子,有两种可能:①N本身就是质数②存在N=a*b(a、b为质数),那么肯定有1≤a≤b≤N,那么a、b必然都是N的质数因子,即找到a就已知b()也是N的质数因子,这样可推知当a=b=时,就不用了再往后去找N的质数因子了。相比暴力破解,这个方法的时间复杂度就..
2021-09-02 00:10:06
1187
2
原创 Python进制转换
和十进制之间的直接转换二进制转十进制n = input()# int(x, base=10), base表示x为几进制# 该方法用于将字符串或数字转换成整型print(int(n, 2))输入:0b10110输出:22八进制转十进制n = input()# int(x, base=10), base表示x为几进制# 该方法用于将字符串或数字转换成整型print(int(n, 8))输入:0o26输出:22十六进制转十进制n = input()
2021-08-30 21:06:48
1146
原创 牛客网HJ4 字符串分隔Python3解法
题目介绍:个人解法:import rewhile True: try: str = input() l = len(str) # 判断字符长度,如果不是8的倍数,将其补成8的倍数 if l%8 != 0: l = (l//8 + 1)*8 # 用0补齐字符串 s = str.ljust(l, '0') # 用正则表达式分割字符串 ..
2021-08-29 16:51:15
294
原创 牛客网HJ3 明明的随机数Python3解法
题目介绍:示例一 输入 输出 3 2 2 1 11 10 20 40 32 67 40 20 89 300 400 15 1 2 10 15 20 32 40 67 89 300 400 说明:先输入3,然后输入3个随机整数2、2、1,这是一组测试用例;再输入11,然后输入.
2021-08-29 10:41:37
957
原创 牛客网HJ2 计算某字母出现次数Python3解法
题目介绍:个人解法:str1 = input()str2 = input()c = 0for i in str1: # 第一行第二行字符全部转成小写,然后再对比 if i.lower() == str2.lower(): c += 1print(c)写完之后,看到评论区一个极其简短的解法:str1 = input().lower()str2 = input().lower()print(str1.count(str2))涉及到的方法..
2021-08-28 20:57:06
222
原创 牛客网HJ1 字符串最后一个单词的长度Python3解法
import rea = input()# 字符串非空,且长度要小于5000字符if len(a) > 5000 or len(a) == 0: print("输入字符串要求非空且小于5000")else: # 将字符串按照空格分割,找出最后一个字符串 b = a.split(str(" "))[-1] # 如果最后一个字符串全部为字母,则直接输出该字符串长度 if b.isalpha() == True: prin...
2021-08-28 19:45:31
322
原创 sqli-labs Less8~10 布尔盲注、时间盲注(无报错回显)
1. Less-8 GET - Blind - Boolian Based - Single Quotes (布尔型单引号GET盲注)判断是否存在数字型或字符型注入:输入1,页面显示正常:输入1’ and 1=1时显示正常:输入1’ and 1=2时显示异常:说明存在字符型的SQL盲注。Less-8和Less-5的区别在于,Less-8对报错语句进行了注释,所以无法使用显错式注入,只能用盲注。1.猜解数据库名长度:输入1' and length(database()) = 5 --+,
2020-10-22 18:12:33
841
原创 sqli-labs Less7 导出文件字符型注入
Less-7 GET - Dump into outfile - String (导出文件GET字符型注入)导出到文件就是可以将查询结果导出到一个文件中,如常见的将一句话木马导出到一个php文件中,常用的语句是:select “<?php @eval($_POST['giantbranch']);?>” into outfile “XXX\test.php”,但这里要获取到网站的在系统中的具体路径(绝对路径)load_file() 读取本地文件into outfile 写入文件,文件路径需
2020-10-22 17:54:47
598
原创 sqli-labs Less5~6 布尔盲注(有报错回显)
双查询注入原理这里参考了这篇文章: https://blog.youkuaiyun.com/Leep0rt/article/details/78556440需要理解四个函数/语句:1. rand() //随机函数2. floor() //取整函数3. count() //汇总函数4. group by clause //分组语句Rand()函数作用如下:返回[0,1)之间的随机数,用法就是SELECT rand();Floor()函数作用如下:向下取整,用法即SELECT floor(11.
2020-10-22 17:28:29
270
原创 sqli-labs Less1~4 union注入(有回显点)
1. Less-1 GET-Error based - Single quotes - String(GET单引号字符型注入)#输入下列url访问,可以看到回显的用户名和密码http://192.168.200.174/sqli-labs-master/Less-1/?id=1#输入单引号后报错http://192.168.200.174/sqli-labs-master/Less-1/?id=1'说明存在sql字符型注入漏洞。盲猜漏洞类型时可以在后面加and 1=1,and 1=2分别查看
2020-10-21 14:25:00
398
原创 Jenkins上传构建生成的文件到svn
这里写自定义目录标题SVN基本命令如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入SVN基本命令检出:svn checkout (检出svn上代码到本地)更...
2019-01-24 14:27:03
3763
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人