随笔分类 -  数据结构和算法

JAVA 数据结构和算法
摘要:题目描述 所谓“变位词”是指两个词之间存在组成字母的重新排列关系 如:heart和earth,python和typhon 为了简单起见,假设参与判断的两个词仅由小写字母构成,而且长度相同 参考实现1 def anagramSolution(s1, s2): alist1 = list(s1) # 字 阅读全文
posted @ 2023-05-24 21:57 晓枫的春天 阅读(40) 评论(0) 推荐(0)
摘要:快速排序 这是一个比较快的排序方式,中心思想是对在无序数组种找到一个基准值,然后找出比基准值小的元素和比基准值大的元素组成一个有序整体,在递归调用达到排序效果的一种算法 参考实现 Python 实现 def quickSort(arr): if arr is None or len(arr) < 2 阅读全文
posted @ 2023-05-24 10:44 晓枫的春天 阅读(15) 评论(0) 推荐(0)
摘要:参考实现 ''' 插入排序 初始是一个有序列表,每次从无序列表取一个元素放到合适的位置完成排序 ''' def insert_sort(list): for i in range(1, len(list)): # 此时 i 表示无序元素的索引 temp = list[i] # 新来的待排序元素 j 阅读全文
posted @ 2023-05-23 22:20 晓枫的春天 阅读(10) 评论(0) 推荐(0)
摘要:选择排序 选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理是:第一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后再从剩余的未排序元素中寻找到最小(大)元素,然后放到已排序的序列的末尾。以此类推,直到全部待排序的数据元素的个数为零。选择排序 阅读全文
posted @ 2023-05-23 07:06 晓枫的春天 阅读(30) 评论(0) 推荐(0)
摘要:基本冒泡排序 ''' 冒泡排序 比较列表相邻的两个元素,前面>后面,交换位置,一趟比较后,无序列表个数减1,有序列表个数+1 复杂度 O(N^2) ''' import random def bubble_sort(list): for i in range(len(list) - 1): for 阅读全文
posted @ 2023-05-22 21:20 晓枫的春天 阅读(16) 评论(0) 推荐(0)
摘要:线性查找 ''' 列表线性查找 线性查找就是从列表起始位置一次查询,直到查询到目标值,或者遍历整个列表完毕才结算查找过程 线性查找复杂度 O(n),比较慢 ''' from call_time import * @call_time def liner_search(list, value): fo 阅读全文
posted @ 2023-05-20 09:29 晓枫的春天 阅读(19) 评论(0) 推荐(0)
摘要:参考实现 # 递归 -汉诺塔 def hanoi(n, a, b, c): if n > 0: hanoi(n - 1, a, c, b) print(f'moving from {a} --> {c}') hanoi(n - 1, b, a, c) hanoi(3, 'A', 'B', 'C') 阅读全文
posted @ 2023-05-19 22:36 晓枫的春天 阅读(28) 评论(0) 推荐(0)
摘要:题目描述 /** * 两数之和 * https://leetcode.cn/problems/two-sum/ * 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。 * 示例 1: * * 输入:num 阅读全文
posted @ 2023-05-18 16:12 晓枫的春天 阅读(29) 评论(0) 推荐(0)
摘要:1、斐波那契数列是什么 斐波那契数列,也称之为斐波那契数,指的是这样一个数列:0、1、1、2、3、5、8、13、21、……在数学上,斐波那契数列以如下被以递归的方法定义:F0=0,F1=1,Fn=Fn-1+Fn-2(n>=2,n∈N*),用文字来说,就是斐波那契数列由 0 和 1 开始,之后的斐波那 阅读全文
posted @ 2021-12-19 20:28 晓枫的春天 阅读(341) 评论(0) 推荐(0)
摘要:数组模拟环形队列 阅读全文
posted @ 2020-04-11 23:31 晓枫的春天 阅读(330) 评论(0) 推荐(0)
摘要:数据结构和算法——稀疏数组探究 阅读全文
posted @ 2020-04-09 23:53 晓枫的春天 阅读(147) 评论(0) 推荐(0)