leetcode刷题——一些算法技巧总结1.0
运算符优先级,简单记就是:! > 算术运算符 > 关系运算符 > && > || > 赋值运算符
把数字取反,可以作为一种标记
pythonlast = {c: i for i, c in enumerate(S)}标记字符串S中每个字母的最后一个位置,存到字典last中十分简洁的写法!!!
二分法规则:
如果是这么写
while(left <= right) {},代表是左闭右闭区间
更新这么更新{
right = mid -1
left = mid +1
}
如果是这么写
while(left < right) {},代表是左闭右开区间
更新这么更新{
right = mid
left = mid +1
}
如果是这么写
while(left < right-1) {},代表是左右双开区间
更新这么更新{
right = mid
left = mid
}
mid = low + (high-low)/2这样写防止溢出 !第167题:
two num和第560题:Subarray Sum Equals K有相同的思想:可以使用字典:key: 遍历list时记录子list的sum值
value:遍历list时记录子list的sum值出现的次数
这样要找sum为target的次数,就可以找`sum-k`的值出现的次数;
要找sum为target的位置,把此时等于sum的位置返回即可。
leetcode刷题——一些算法技巧总结1.0的更多相关文章
- leetcode刷题——一些算法技巧总结2.0
异或.与的一点总结(这些位运算真的是骚操作2333) 两个相同的数字:a^a=0 取出一个数最右端为1的那一位:a &=-a 其中-a是在计算机中就是a的补码表示(这样所有的加法运算可以使用同 ...
- C#LeetCode刷题-贪心算法
贪心算法篇 # 题名 刷题 通过率 难度 44 通配符匹配 17.8% 困难 45 跳跃游戏 II 25.5% 困难 55 跳跃游戏 30.6% 中等 122 买卖股票的最佳时机 II C ...
- C#LeetCode刷题-分治算法
分治算法篇 # 题名 刷题 通过率 难度 4 两个排序数组的中位数 C#LeetCode刷题之#4-两个排序数组的中位数(Median of Two Sorted Arrays)-该题未达最优解 30 ...
- C#LeetCode刷题-回溯算法
回溯算法篇 # 题名 刷题 通过率 难度 10 正则表达式匹配 18.8% 困难 17 电话号码的字母组合 43.8% 中等 22 括号生成 64.9% 中等 37 解数独 45.8% ...
- 看完互联网大佬的「LeetCode 刷题手册」, 手撕了 400 道 Leetcode 算法题
大家好,我是 程序员小熊 ,来自 大厂 的程序猿.相信绝大部分程序猿都有一个进大厂的梦想,但相较于以前,目前大厂的面试,只要是研发相关岗位,算法题基本少不了,所以现在很多人都会去刷 Leetcode ...
- LeetCode刷题总结-数组篇(下)
本期讲O(n)类型问题,共14题.3道简单题,9道中等题,2道困难题.数组篇共归纳总结了50题,本篇是数组篇的最后一篇.其他三个篇章可参考: LeetCode刷题总结-数组篇(上),子数组问题(共17 ...
- LeetCode刷题的一点个人建议和心得
目录 1. 为什么我们要刷LeetCode? 2. LeetCode的现状和问题 3. 本文的初衷 4. LeetCode刷题建议 4.1入门数据结构,打基础阶段 4.2 建立 ...
- LeetCode刷题专栏第一篇--思维导图&时间安排
昨天是元宵节,过完元宵节相当于这个年正式过完了.不知道大家有没有投入继续投入紧张的学习工作中.年前我想开一个Leetcode刷题专栏,于是发了一个投票想了解大家的需求征集意见.投票于2019年2月1日 ...
- leetcode 刷题进展
最近没发什么博客了 凑个数 我的leetcode刷题进展 https://gitee.com/def/leetcode_practice 个人以为 刷题在透不在多 前200的吃透了 足以应付非算法岗 ...
随机推荐
- Ubuntu16.04重新安装MySQL数据库
安装之前先检查mysql是否卸载干净 dpkg --list|grep mysql 如果没有卸载干净请看上篇文章将mysql卸载干净 Ubuntu16.04彻底卸载MySQL 开始安装 可以直接默认安 ...
- Oracle VM Virtual 安装 ubuntu 后设置全屏
按照正常流程在vm中安装了ubuntu之后,发现ubuntu系统无法全屏显示,解决途径如下: 1.在vm中点击设置 2.选择“安装增强功能” 3.正常情况下,我们可以在桌面看到一个光盘图标(文件名:V ...
- [macOS] finder变慢提速
原文地址:http://ntfs-formac.com/fix-slow-finder-macos-sierra/ 我采取的是第二种方法,够简单,直接在终端执行 rm ~/Library/Caches ...
- Centos7 安装redis
1.下载redis安装包 wget http://download.redis.io/releases/redis-4.0.9.tar.gz 2.检查及下载gcc gcc -v yum -y inst ...
- IT题库7-线程加锁
转载:http://www.cnblogs.com/linjiqin/p/3208843.html 一.同步问题提出 线程的同步是为了防止多个线程访问一个数据对象时,对数据造成的破坏.例如:两个线程T ...
- EntityFramwork 七七八八
Tip 技术的选型受技术先进性.技术持续性.技术普及度.推行力度的影响. 我也很无奈,一大把年纪了又要重新学一种ORMapping框架. 说实话,这是我用过的最复杂的ORMapping框架了. Ent ...
- 硬件笔记之MacMini开启HiDPI
0x00 概述 先科普一下,有关retina和HiDPI那点事 ,Macmini在2k显示器的显示太小了,看起来费眼,没办法,苹果原生HiDPI是支持4k显示器的,所以以后买显示器,直接买4k的一步到 ...
- 阿里云windows 2008 服务器处理挖矿程序 Miner
阿里云盾最近报发现wanacry蠕虫病毒和挖矿进程异常 仔细检查进程后,发现两个奇怪的进程 Eternalblue-2.2.0.exe,winlogins.exe 特别是伪装成 winlogins.e ...
- excel VBA动态链接数据库
最近车间制造部有需求,需要通过excel填写的ID获取数据库中的某个取值.研究了一下VBA,简要记录一下代码,仅供参考. Function GETPMAX(SID As String) As Stri ...
- kubernets controller 和 CRD 具体组件分析
(dlv) b k8s.io/sample-controller/pkg/client/informers/externalversions.(*sharedInformerFactory).Info ...