欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python数据结构算法举例

程序员文章站 2022-03-03 18:51:01
内容: 掌握基本算法0、 编程基础查漏1、 双指针问题2、 哈希算法3、 深度优先遍历算法4、 广度优先遍历算法5、 回溯算法6、 贪心算法7、 动态规划算法8、 最短路径问题9、 分治算法时间:10月13日——10月16日笔记:第0章1、变量:类型和操作;输入和输出;简单变量类型,数字、字符串、元组、字典;2、三大结构:循序,从前到后依次运行;分支,if语句及它的衍生语句;循环,while 和 for 语句。while 常在不确定循环次数的时候使用, for...

python基本算法

0、 编程基础查漏
1、 双指针问题
2、 哈希算法
3、 深度优先遍历算法
4、 广度优先遍历算法
5、 回溯算法
6、 贪心算法
7、 动态规划算法
8、 最短路径问题
9、 分治算法

第0章

1、变量:类型和操作;输入和输出;简单变量类型,数字、字符串、元组、字典;
2、三大结构循序,从前到后依次运行;分支,if语句及它的衍生语句;循环,while 和 for 语句。while 常在不确定循环次数的时候使用, for 语句和 while 语句结构相似功能有很多不同,在 for 循环的开始,首先提供一个范围,无论是一个数的大小范围还是一个列表;循环开始的时候,会用一个变量储存本次循环的值,每循环一次就更新一次这个变量的值,表量不在提供的范围内时,循环结束。
3、列表:概念和使用([ ]表示)。列表是一个有序集合,可以根据索引来找到每一个元素。元素的格式是列表名+[索引值], eg: mylist[0] 。元组中的元素是固定不变的,它们的值不能被更改,长度也是固定的,不能添加或删除元素;虽说不能修改,但是元组中的元素可以被截取、拼接或者重新赋值。字符串、元组和 列表是可以相互转换的,用到 str,list,tuple 函数。任何字符串可以转换为元组和列表。
4、函数:定义和调用。 num = len(mylist) 。
定义函数格式,def 函数名(变量名):

第1章

1、数组合并:合并两个有序数组。

#第一个数组1,3,4,6,10 #第二个数组2,5,8,11 #两个数组进行合并 arr1 = [1,3,4,6,10] arr2 = [2,5,8,11] ind = 0 ans = arr1.copy() #ans初始化为arr1 for i in range(0,len(arr2)): while ind < len(arr1): if arr2[i] <= arr1[ind]: ans.insert(ind+i , arr2[i]) break else: ind = ind + 1 else: ans = ans + arr2[i:] print (ans) 

2、二分查找:在有序数组中查找元素。

思想:对折再对折。

3、链表:链表的概念和应用。 

第2章

1、哈希算法,又称散列函数算法,是一种查找算法。简单来说就是把一些复杂的数据,通过某种函数映射关系,映射成更加易于查找的关系。
应用:
两个数的和: 
单词模式匹配:简单的模式匹配问题

2、常见的数据查找算法:顺序查找、二分查找、深度优先遍历、广度优先遍历、哈希查找。

3、哈希算法原理:根据数据量预先设置一个长度为M的数组,使用一个哈希函数F并以数据的关键字作为自变量,得到唯一的返回值,返回值的范围为0~M-1,这样就可以利用哈希函数F将数据元素映射到数组的某一位下标并把数据存放在对应位置上。查找时,利用哈希函数F计算该数据应存储在哪里,再到相应的位置取出查找的数据。

本文地址:https://blog.csdn.net/weixin_45311624/article/details/109045269

相关标签: python 数据结构