自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 字符串与列表的基本操作方法

如何实现"1,2,3"变为[“1”,“2”,“3”]a = “1,2,3”b = a.split(",")print(b)如何实现[“1”,“2”,“3”] 变为[1,2,3]a = [“1”,“2”,“3”]b = []for i in a: b.append(int(i))print(b)拓展字符串常⽤函数:islower():判断字符串是否是全...

2019-07-03 19:12:50 214

原创 二叉树的创建与遍历

二叉树二叉树是每个节点最多有两个子树的树结构。通常子树被称作“左子树”(left subtree)和“右子树”(right subtree)class Node(object): """二叉树节点类""" def __init__(self,item): self.item = item self.lchild = None se...

2019-05-24 19:56:39 179

原创 二分差找

二分法查找二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而查找频繁的有序列表。首先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将表分成前、后两个子表,如果中间位置记录的关键字大于查找关键字,则进一步查找前一子表,否则进一步查找后一...

2019-05-24 19:41:58 215

原创 归并排序

归并排序归并排序是采用分治法的一个非常典型的应用。归并排序的思想就是先递归分解数组,再合并数组。将数组分解最小之后,然后合并两个有序数组,基本思路是比较两个数组的最前面的数,谁小就先取谁,取了后相应的指针就往后移一位。然后再比较,直至一个数组为空,最后把另一个数组的剩余部分复制过来即可。def merge_sort(alist): """归并排序""" # 列表长度 ...

2019-05-24 19:30:49 109

原创 希尔排序

希尔排序希尔排序(Shell Sort)是插入排序的一种。也称缩小增量排序,是直接插入排序算法的一种更高效的改进版本。希尔排序是非稳定排序算法。该方法因DL.Shell于1959年提出而得名。 希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止。def shell_sort(ali...

2019-05-24 19:23:58 124

原创 快速排序

快速排序快速排序(英语:Quicksort),又称划分交换排序(partition-exchange sort),通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。步骤为:1.从数列中挑出一个元素,称为"基准"(pivot),2.重新排序数列...

2019-05-24 19:17:52 121

原创 插入排序

插入排序插入排序(英语:Insertion Sort)是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。插入排序在实现上,在从后向前扫描过程中,需要反复把已排序元素逐步向后挪位,为最新元素提供插入空间。插入排序分析:def insert_sort(alist): # 从第二个位置,即下标为1的元素开始向前插入...

2019-05-24 19:12:38 108

原创 选择排序

选择排序选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理如下。首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。选择排序的主要优点与数据移动有关。如果某个元素位于正确的最终位置上,则它不会被移动。选择排序每次交换一对元素,它们当中至少有一个将...

2019-05-24 19:08:33 136

原创 冒泡排序

冒泡排序冒泡排序(英语:Bubble Sort)是一种简单的排序算法。它重复地遍历要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。遍历数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。冒泡排序算法的运作如下:比较相邻的元素。如果第一个比第二个大(升序),就交换他们两个。对每一对相邻元...

2019-05-22 19:41:19 111

原创 数据结构单链表和双链表

链表的定义链表(Linked list)是一种常见的基础数据结构,是一种线性表,但是不像顺序表一样连续存储数据,而是在每一个节点(数据存储单元)里存放下一个节点的位置信息(即地址)。单向链表图示1 .单链表"""算法. 单链表示例:"""class SingleNode(object): """链表的节点类""" def __init__(self, item...

2019-05-22 19:29:39 4793

原创 网络通信udp与tcp的区别

1.网络通信udp1.创建套接字2.绑定ip和端口号3.使用套接字收/发数据(记得解码(decode)和编码(encode)哦)4.关闭套接字#coding=utf-8from socket import *# 1. 创建套接字udp_socket = socket(AF_INET, SOCK_DGRAM)# 2. 绑定本地的相关信息,如果一个网络程序不绑定,则系统会随机分...

2019-05-22 19:06:09 379

原创 while循环打印*和99乘法表

1.while循环打印*2.打印九九乘法表# 完成九九乘法表的程序:# 分析:# 1.单行信息的组成 %d*%d=%d# 2.使用循环结构完成单个信息的多次输出# 3.使用循环结构完成单行信息的多次输出# 单个信息的格式:# j = 3# k = 5# print("%d*%d=%d" % (j,k,j*k))# 单行信息的格式:# j = 1# k = 5...

2019-05-13 15:09:38 2855

原创 sublime text 汉语化 添加插件

1.在官网下载合适自己电脑使用得sublime软件后2.在浏览器打开https://github.com/Trojain/sublime-package这个网址3.然后双击Default.sublime包4.然后点击下载5,然后按以下操作6.进入后把下载好的包拖进去或者复制进去,关闭sublime再打开就变成汉语了!7.添加插件先在浏览器输入https://packagecontr...

2019-05-01 01:50:43 182

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除