算法输入:基数排序,输入一张有n个数的表L={a1,a2,…,an}和k位数字
算法输出:按非降排列的L
算法思想:可以用数学归纳法证明,假定这些书的低k-1位数已经排好序,那么对第k位数完成排序之后,就可以完成所有的排序。
算法过程:首先根据最低位=1,把数分到表L1中;最低位=0的数,分到L0中;依次进行,直到这n个数字的最低位分配完毕。然后将这些表用顺序连接起来。进行次低位的排序,直到排序完成。
算法代码:
算法输入:基数排序,输入一张有n个数的表L={a1,a2,…,an}和k位数字
算法输出:按非降排列的L
算法思想:可以用数学归纳法证明,假定这些书的低k-1位数已经排好序,那么对第k位数完成排序之后,就可以完成所有的排序。
算法过程:首先根据最低位=1,把数分到表L1中;最低位=0的数,分到L0中;依次进行,直到这n个数字的最低位分配完毕。然后将这些表用顺序连接起来。进行次低位的排序,直到排序完成。
算法代码:
基础知识(其中部分是笔者推理猜测内容,如果存在错误,请告知,万分感激):
Ask:ISO是什么文件方式?
Answer:光盘镜像文件格式。大家还记得小的时候的光盘吧,另外大家是不是也曾经看过书上的装系统教程,书上通常都说第一个步骤是插入光盘。那么随着时代的发展,好多电脑都没有了光驱,我们就把光盘的东西以ISO文件的方式存放到电脑上,可以直接打开或者烧录到U盘中启动系统。
Ask:什么是可启动U盘?
Answer:我们把系统刻录到U盘等介质中,能从U盘启动操作系统。这样的U盘就叫可启动U盘。
Ask:什么是Windows PE:
Answer:即Windows预安装环境,可以理解为这个是Windows的最小系统,当你从U盘启动Windows PE的时候,因为硬盘不在这个系统之内,所以这个时候你拥有操作整个磁盘的最高权限,可以进行分区(正常情况下,不进去PE是不能操作C盘的),安装系统等操作。
Ask:写入ISO到U盘与直接复制ISO中的文件到U盘的区别:
Answer:猜测是因为写入到U盘的时候,会把需要引导linux的文件写入到第一个扇区。但是直接复制到U盘的时候,可能复制到第一个扇区文件不是引导文件,那么就无法引导系统安装。当然,这只是我的个人猜测。另外,对于UEFI启动方式,直接复制到U盘不刻录光盘是可以的,因为UEFI启动方式会自动寻找硬盘中FAT32分区的EFI文件夹下的.efi文件。
Ask:选择是32位操作系统还是64位的操作系统:
Answer:多少位即CPU一次可处理的数据量。现在大多数电脑都是64位的操作系统,所以大家都直接装64位的系统,但是如果你发现你的运行内存小于3G的时候就要检查自己的CPU是不是32位的了。提示:只有64位的系统、64位的CPU、64位的软件才能发挥64位的性能。
Server:
1 | import socket |
要点:开启多线程的时候多个线程用的代码段是相同的。要想不相同的可以加上lock、client标志进行判断!
Client one:
1 | # -*- coding: utf-8 -*- |
datetime是Python处理日期和时间的标准库。
我们先看如何获取当前日期和时间:
1 | >>> from datetime import datetime |
注意到datetime
是模块,datetime
模块还包含一个datetime
类,通过from datetime import datetime
导入的才是datetime
这个类。
算法作用:将一个无序的数组a 按照非降序排序!
算法思想:将a[1] 和 a[0]比较大小,如果比a[0]小,把a[0] 后移一位,插入a[1],然后将a[2]依次和a[1] a[0]比较大小,当比a[2] 小的时候一直后移,然后插入a[2]。 依次循环知道所有元素排序完成!
1 | #include<stdio.h> |
算法作用:将一个无序的数组a 按照非降序排序!
算法思想:首先把数组a[] 的第一个元素放在数组 b[]中,然后从a[1]开始和a[0] 进行比较,如果小于a[0],那么跟a[0] 交换,直到将a 中的元素遍历完成。下次循环从a[2]开始依次比较和a[1] 的大小,如果小于a[1],那么跟a[1] 交换,直到将a 中的元素遍历完成。依次执行步骤,直到所有的数据排序完成!
1 | #include<stdio.h> |
对于数组的形参: int *a
和int a[]
效果相同
函数的声明中,只需要声明函数参数的类型以及参数的个数即可,不必加上参数的变量
1 | #include<stdio.h> |