第02课丨训练准备和复杂度分析
1 注意点
1.1 训练环境设置
⼯欲善其事,必先利其器
1.2 编码技巧
指法和小操作
• home, end(⾏头、⾏尾)
• IDE 的⾃动补全
• Top tips for
1、编辑(Editing)
Ctrl + Space 基本的代码完成(类、方法、属性)
Ctrl + Alt + Space 快速导入任意类
Ctrl + 鼠标:简介
Ctrl + F1 显示错误描述或警告信息
Ctrl + / 行注释
Ctrl + Shift + / 块注释
Ctrl + Shift + ]/[ 选定代码块结束、开始
Ctrl + Alt + L 代码格式化
Tab / Shift + Tab 缩进、不缩进当前行
Ctrl+X/Shift+Delete 剪切当前行或选定的代码块到剪贴板
Ctrl+C/Ctrl+Insert 复制当前行或选定的代码块到剪贴板
Ctrl+V/Shift+Insert 从剪贴板粘贴
Ctrl + D 复制选定的区域或行
Shift + Enter 另起一行
Ctrl + Delete 删除到字符结束
Ctrl + Backspace 删除到字符开始
2、查找/替换(Search/Replace)
Ctrl + R 替换
Ctrl + Shift + F 全局查找
Ctrl + Shift + R 全局替换
1.3 Code Style
要注意各种编程规范
1.4 自顶向下的编程方式
编程时先考虑顶层方向,比如先写好各个函数。
之后再考虑细节问题,比如函数的具体实现。
2 时间复杂度、空间复杂度
2.1 Big O notation
总结:常、对、幂、指、阶
O(1): Constant Complexity 常数复杂度
O(log n): Logarithmic Complexity 对数复杂度
O(n): Linear Complexity 线性时间复杂度
O(n^2): N square Complexity 平⽅
O(n^3): N square Complexity ⽴⽅
O(2^n): Exponential Growth 指数
O(n!): Factorial 阶乘
注意:只看最高复杂度的运算
2.2 时间复杂度曲线


浙公网安备 33010602011771号