Table of Contents
day22
反省
复习复习很弱,一定要复习
代办
anki三组
优化程序,交换放循环外面进行
复习
树,非线性结构
概念,子树,跟,叶子,深度,度,父子,层
二叉树 :先序,后续,中序(根据根来)
二叉树只有两个岔,严格区分左子树,右子树
递归思想:递推,回归,需要有结束条件,结束条件就是回归
封装的好处:重复调用,保护代码
冒泡排序
选择排序
插入排序的重点:
拿出一个数,和索引前面的作比较,条件是 不大于0,并且元素不小于那个数,一般都用while进行,
while条件的使用(不止判断一个条件,循环次数并不确定)
快速排序
需要从新复习,2020.3.17日
二分查找
要是一个有序数组,从中间位置开始查找
数电模电微电子
IO
字节串
字节串就是python用来表达二进制编码的一种方式
b"hello World" (内部是二进制,为了方便观看才加b)这样就是字节串,ASCII码可以用,就是上的英文等等,中文不可以(python中汉子占三个字节)
UTF-8可以转换
字符串转换为字节串 encode()
字节串转换为字符串 decode()
字节串转换函数bytes()
参数:整数n 初始化一个长度为n的列表序列(里面都是\x00)
字符串 就是字符串的encode
0-255整数列表 ,将列表整数转换位bytes字节串
常用单位
1G=1024M
1M = 1024KB
1K = 1024 bytes
1bytes = 8bit
分析一个函数
功能参数返回值,是分析函数的三要素
各个系统的换行符
- Dos 和 windows 采用“回车+换行,CR/LF”表示下一行;
- UNIX/Linux 采用“换行符,LF”表示下一行;
- 苹果机(MAC OS 系统)则采用“回车符,CR”表示下一行。
作业:进制转换
- (二、八、十六进制) → (十进制);
- (十进制) → (二、八、十六进制);
- (二进制) ↔ (八、十六进制);
- (八进制) ↔ (十六进制);
顺序开始是从右到左 任何数零次方是1,一次方是本身
十进制0.75转二进制 (一、0.75*2=1.5-->1余0.5 二、0.5*2=1 -->1)
(一)二,八,十六进制转十进制
二进制(11)转十进制:第一位是1*2的0次方,第二位是1*2的1次方,依次推,最后结果相加
八进制(11)转十进制:第一位是1*8的零次方,第二位是1*8的二次方,依次推,最后结果相加
十六进制(11)转十进制:第一位是1*16的零次方,第二位是1*16的二次方,依次推,最后结果相加
(二)十进制转换二、八、十六进制
用取余法,二进制初二,八进制除八,十六进制除十六
(三)二进制转八、十六进制
二进制转八进制,取三合一法(如果有小数,要拿小数分界,小数是从右到左补位011 110 1)比如这个补成(011 110 100)
常见八进制位 000-->0、 001-->1 、010->2 、011-->3 、100 --> 4 、101 -->5 、110--> 6 、111--> 7
二进制转十六进制,取四合一法
和八进制差不多,也是以小数点作为分界