python 排序 2020.3.16

发布于 2020-03-16  82 次阅读


Table of Contents

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”表示下一行。

https://www.jianshu.com/p/8d33019d1c69

作业:进制转换

wpsC01D.tmp
  1. (二、八、十六进制) → (十进制);
  2. (十进制) → (二、八、十六进制);
  3. (二进制) ↔ (八、十六进制);
  4. (八进制) ↔ (十六进制);
顺序开始是从右到左  任何数零次方是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
二进制转十六进制,取四合一法
和八进制差不多,也是以小数点作为分界