函数、排序、线性数据结构
来源:互联网 发布:金庸武侠知乎 编辑:程序博客网 时间:2024/06/04 19:17
大学计算机–Python算法实践
李金双、李凤云、张昱
函数定义
# def 函数名([形参列表]):# 函数体def add(a, b):return a + bc = add(7.6, 3.9)print(c) #11.5
排序
a = [6, 9, 23, 15, 1, 5, 34]b = sorted(a) #sorted()函数a.sort() #list提供的sort()方法,改变了aprint(a) #[1, 5, 6, 9, 15, 23, 34]print(b) #[1, 5, 6, 9, 15, 23, 34]b = sorted(a, reverse = True)a.sort(reverse = True)print(a) #[34, 23, 15, 9, 6, 5, 1]print(b) #[34, 23, 15, 9, 6, 5, 1]
交换两个数的值
a = 2b = 9a, b = b, a #exchangeprint(a, b) #9 2
线性数据结构
通常直接用列表作为数组
栈也可通过列表实现
append()
对应入栈操作pop()
对应出栈操作s = []s.append(2)s.append(3)print(s) #[2, 3]s.pop()print(s) #[2]s.pop()print(s) #[]
collections.deque
是双向队列,支持任意端添加删除数据from collections import dequedq = deque()dq.append(1) #尾部添加元素dq.append(2)print(dq) #deque([1, 2])dq.appendleft(3) #首部添加元素dq.appendleft(4)print(dq) #deque([4, 3, 1, 2])print(dq.pop()) #弹出尾部元素 2print(dq.popleft()) #弹出首部元素 4print(dq) #deque([3, 1])dq.reverse() #反转print(dq) #deque([1, 3])dq.clear() #清空print(dq) #deque([])
树
树是节点和边的集合
属非线性结构
对于二叉树,设
i 度节点的数目为Ni N0+N1+N2=N N0⋅0+N1⋅1+N2⋅2=N−1
三种遍历方式:先序、中序、后序
阅读全文
0 0
- 函数、排序、线性数据结构
- 数据结构——线性排序
- 数据结构线性表的基本函数
- 数据结构---快速排序封装函数
- 线性数据结构
- 数据结构与算法——线性时间排序(计数排序、基数排序、桶排序)
- 离散数据结构,线性数据结构
- 数据结构4:线性表中的10个扩展函数
- c语言数据结构线性表之顺序表功能函数
- 线性排序
- 自定义数据结构使用sort函数排序
- hdu 6040 Hints of sd0061【STL线性排序函数】
- linux中C语言函数:数据结构函数(二分查找、二叉树、哈希表、线性搜索)
- 数据结构拾遗---线性表
- 整理--数据结构--线性表
- 数据结构(线性表)
- 整理--数据结构--线性表
- 数据结构之线性结构
- 习题7.5
- rehat 6.5 iso中安装gcc
- java面试必问面试题
- 南邮CTF逆向题第三道Py交易解题思路
- 数据结构实验之排序七:选课名单
- 函数、排序、线性数据结构
- Arduino寻迹与识别红绿灯
- java面向对象
- 2017 ccpc 秦皇岛C Crusaders Quest
- java基础复习(类和对象)
- selenium得到一个动态页面
- Java多线程下的网络通信编程--图片传输
- 2017 ccpc 秦皇岛E String of CCPC
- Scala学习