【ARTS】01_15_左耳听风-20190218~20190224
ARTS:
- Algrothm: leetcode算法题目
- Review: 阅读并且点评一篇英文技术文章
- Tip/Techni: 学习一个技术技巧
- Share: 分享一篇有观点和思考的技术文章
Algorithm
【leetcode】520. Detect Capital
https://leetcode.com/problems/detect-capital/submissions/
1)problem
一句话,你需要判断其中大写字母的使用是否正确。
当下列情况之一成立时,我们将单词中大写字母的用法定义为正确:
- 这个单词中的所有字母都是大写字母,如“USA”。
- 这个单词中的所有字母都不是大写字母,如“leetcode”。
- 如果它有多个字母,只有这个词中的第一个字母是大写字母,如“Google”。
否则,我们定义该单词不以正确的方式使用大写字母。
Example 1:
Input: "USA"
Output: True
Example 2:
Input: "FlaG"
Output: False
注意: 输入将是一个非空单词,由大写和小写拉丁字母组成。
2)answer
- 把这个单词转换为大写字母,如果和原来字符串对比相等,就返回true
- 把这个单词转换为小写字母,如果和原来字符串对比相等,就返回true
- 把这个单词转换为首个字母为大写,如果和原来字符串对比相等,就返回true
否则为False
3)solution
class Solution(object):
def detectCapitalUse(self, word):
"""
:type word: str
:rtype: bool
"""
if word.upper() == word:
return True
elif word.lower() == word:
return True
elif word.capitalize() == word:
return True
else:
return False
第二种算法:
class Solution(object):
def detectCapitalUse(self, word):
"""
:type word: str
:rtype: bool
"""
lowerStr = list(word)
for i, j in enumerate(lowerStr):
if j >= 'A' and j <= 'Z':
lowerStr[i] = chr(ord(j) + (ord('a') - ord('A')))
if "".join(lowerStr) == word:
return True
upperStr = list(word)
for i,j in enumerate(upperStr):
if j >='a' and j<='z':
upperStr[i] = chr(ord(j) - (ord('a') - ord('A')))
if "".join(upperStr) == word:
return True
capitalStr = list(word)
for x in range(len(word)):
if x == 0:
if capitalStr[x] >= 'a' and capitalStr[x] <= 'z':
capitalStr[x] = chr(ord(capitalStr[x]) - (ord('a') - ord('A')))
else:
if capitalStr[x]>= 'A' and capitalStr[x] <= 'Z':
capitalStr[x] = chr(ord(capitalStr[x]) + (ord('a') - ord('A')))
if "".join(capitalStr) == word:
return True
return False
Review
【漏洞挖掘】多线程扫描
1)场景
端口多线程扫描
2)问题难点
因为每一个socket都有时间延迟,每一个socket扫描都将会耗时几秒钟
3)解决问题的方法
引入Python线程:线程提供了一种同时执行的方式。
4)方法细节
多线程使用方法:
for tgtPort in tgtPorts:
print('Scanning port ' + str(tgtPort))
t = threading.Thread(target=connScan, args=(tgtHost, int(tgtPort)))
t.start()
加锁:creenLock.acquire()
锁打开,信号量将允许线程继续运行然后打印输出,如果锁定,我们将要等到控制信号量的进程释放锁。
释放锁:screenLock.release()
信号量:semaphore是一个内置的计数器
每当调用acquire()时,内置计数器-1
每当调用release()时,内置计数器+1
Tip
【安全开发】Python解析Pcap包类源码学习
1)场景
解析PCAP包,读取里面的关键信息。
2)问题难点
自动化读取
3)解决思路
使用Python搜索关键字筛选出指定的数据包
4)方法细节
Python解析Pcap包类源码学习
https://www.cnblogs.com/17bdw/p/10562213.html
Share
【业务】绕过PALOALTO TRAPS EDR解决方案
1)场景
绕过PALOALTO TRAPS EDR解决方案,运行黑客工具
2)问题难点
无法直接卸载。
3)解决思路
通过fltMC.exe卸载筛选器驱动程序,达到关掉PALOALTO TRAPS服务的目的。
4)方法细节
绕过PALOALTO TRAPS EDR解决方案
https://www.cnblogs.com/17bdw/p/10562347.html
【ARTS】01_15_左耳听风-20190218~20190224的更多相关文章
- 【ARTS】01_21_左耳听风-201900401~201900407
ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...
- 【ARTS】01_20_左耳听风-20190325~20190331
zz## ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 ...
- 【ARTS】01_19_左耳听风-20190318~20190324
ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...
- 【ARTS】01_18_左耳听风-20190311~20190317
ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...
- 【ARTS】01_17_左耳听风-20190304~20190310
ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...
- 【ARTS】01_16_左耳听风-20190225~20190303
ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...
- 【ARTS】01_14_左耳听风-20190211~20190217
ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...
- 【ARTS】01_10_左耳听风-20190114~20190120
ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...
- 【ARTS】01_09_左耳听风-20190107~20190113
ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...
随机推荐
- Zabbix Server 自带模板监控更加灵活MySQL数据库
Zabbix Server 自带模板监控更加灵活MySQL数据库 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.zabbix-agent端配置 1>.修改zabbix的 ...
- Journal Storage Directory not formatted
类型一: 当你从异常信息中看到JournalNode not formatted,如果在异常中看到三个节点都提示需要格式化JournalNode. 如果你是新建集群,你可以重新格式化NameNode, ...
- SpringBoot笔记十七:热部署
目录 什么是热部署 Devtools热部署 什么是热部署 热部署,就是在应用正在运行的时候升级软件,却不需要重新启动应用. 举个例子,王者荣耀的更新有时候就是热部署,热更新,就是他提示你更新,更新40 ...
- GC ROOT
(GC Root有哪些) 基本思想是通过一系列称为“GC roots”的对象作为起始点,可以作为根节点的是: 虚拟机栈(栈帧中的本地变量表)中引用的对象(即所有Java线程当前活跃的栈帧里指向GC堆里 ...
- HDU - 1272 小希的迷宫(并查集判断环)
https://cn.vjudge.net/problem/HDU-1272 Description 上次Gardon的迷宫城堡小希玩了很久(见Problem B),现在她也想设计一个迷宫让Gardo ...
- Eclipse创建SpringMVC,Spring, Hibernate项目
创建一个java project,创建连个folder,分别命名为java和webapp,删除src文件夹. 打开工程的propertise设置中的build to path,将输出设置为工程名\we ...
- Spring事物的属性
链接:https://www.nowcoder.com/questionTerminal/1c65d30e47fb4f59a5e5af728218cac4?orderByHotValue=2& ...
- Docker摘要
Docker https://www.docker.com/ 消除应用的依赖矩阵. 消除硬件依赖 和 软件依赖. Escape the app dependency matrix Eliminate ...
- java.lang.NoClassDefFoundError: org/apache/commons/collections/FastHashMap-----commons-ctions版本问题
今天用到了一系列的第三方jar包,一环扣一环, 记住一个: 倘若你所导入的第三方jar包中的类一直显示未找到,那就是你的路径出问题了, /WEB-INF/lib目录下才是放第三方jar包位置, 但是今 ...
- 关于Failed to check the status of the service com.taotao.service.ItemService. No provider available fo
原文:http://www.bubuko.com/infodetail-2250226.html 项目中用dubbo发生: Failed to check the status of the serv ...