算法 常用
数据结构与算法-08堆
## 堆 堆(Heap)是一种特殊的树形数据结构,它满足以下两个条件: 堆是一棵完全二叉树,即除了最后一层,其他层都是满的,最后一层从左到右填满。 堆中每个节点的值都大于等于(或小于等于)其子节点的值,这种性质称为堆序性。 根据堆序性,堆可以分为两种类型: - 大根堆(Max Heap):每个节点的 ......
Redis五大数据类型以及常用命令
# Redis五大数据类型以及常用命令 ## redis常用五大数据类型 > String (字符串)、List(列表)、Hash(哈希表)、Set(无序集合)、Zset(有序集合) ## redis数据库常见使用命令 - redis-server : redis服务器启动命令 - redis-cl ......
文心一言 VS 讯飞星火 VS chatgpt (34)-- 算法导论5.3 1题
# 一、Marceau 教授不同意引理 5.5 证明中使用的循环不变式。他对第1次送代之前循环不变式是否为真提出质疑。他的理由是,我们可以很容易宣称一个空数组不包含0排列。因此一个空的子数组包含一个0排列的概率应是 0,从而第 1次选代之前循环不变式无效。请重写过程 RANDOMIZE-IN-PLA ......
mango常用语句及学习
1、mongodb查询排序 在mongodb 中使用 sort() 方法对进行排序,sort()方法可以通过参数指定排序的字段,并且使用 1 或者 -1 来指定排序的方式, 其中 1 为升序排序, 而 –1 为降序排序。 db.getCollection("cloudCmd").find({}).s ......
数据结构与算法-06散列表
## 散列表 散列表(Hash Table),也称为哈希表,是一种基于哈希函数(Hash Function)实现的数据结构,它支持快速的插入、删除和查找操作。 散列表将每个元素的关键字(Key)通过哈希函数映射到一个固定的位置,称为散列值(Hash Value),然后将元素存储在该位置上。 ![散列 ......
常用的文件操作命令
vim, vi光标跳转到文首/文末/行首/行尾 若在Insert模式下,需要先按一下Esc, 文首:按gg(区分大小写) 文末:按G(区分大小写) (跳转到行首和行尾,各有两种方法:) 行首:①按option ②按0(数字0) 行尾:按fn + 左右上下键 ......
数据结构与算法-06树及二叉树
## 树和二叉树 完全二叉树: 除了最下层,每一层都满了 满二叉树: 每一层都满了 平衡二叉树: 任意两个节点的高度差不大于1 排序二叉树: ![](https://img2020.cnblogs.com/blog/1064540/202004/1064540-20200421195003247-1 ......
数据结构与算法-栈
## 栈 堆和栈一样吗? 栈(stack)一般编译器自动分配释放 堆(heap)一般由程序员分配释放,或程序结束后OS释放 LIFO 后进先出 ## 栈的实现 ``` class Stack(object): def __init__(self): self.__list = [] def push ......
数据结构与算法-队列
## 队列 FIFO 先进先出 ### 队列的实现 ``` class Queue(object): def __init__(self): self.__list = [] def enqueue(self, item): self.__list.append(item) def dequeue( ......
数据结构与算法-链表
## 链表 一个节点分为两部分,数据区和链接区, 链接区指向下一个节点 ### 单项链表 ![](https://img2020.cnblogs.com/blog/1064540/202004/1064540-20200421194754838-1882136796.png) a, b = b, a ......
数据结构与算法-顺序表
## 顺序表 用连续单元存储数据(地址连续) 变量名指向起始地址 索引实际是从起始位置的偏移量 1. 一体存储 元素内置 2. 分离存储 元素外置 3. 动态顺序表(可以数据扩充) ## 顺序表的操作 添加元素 末尾添加 O(1) 中间插入O(n) 插入非保序O(1) 删除元素 末尾删除 O(1) ......
C++哈希算法(一)
哈希设计思想:试想如果我们对一个数组进行查询,这个数组里,每一个元素都是一个字符串。我们知道数组最快的检索办法是通过数组的下标进行检索,但是对于这种场景,我们无能为力,只能从头查到尾,从而查询出目标元素。 如果我们要根据名字找到其中的任何一个元素,就需要遍历整个数组。最坏情况下时间复杂度是O(n) ......
D*算法
一、简介“D*算法”的名称源自 Dynamic A Star,最初由Anthony Stentz于“Optimal and Efficient Path Planning for Partially-Known Environments”中介绍。它是一种启发式的路径搜索算法,适合面对周围环境未知或者 ......
k8s常用网络排查
这里主要记录一些在实际排查网络问题过程中,觉得非常好用的工具或方法。大多数和 k8s 的网络问题相关 1. iptables 处理规则流程图 出处:https://www.zsythink.net/archives/1199 2. 使用 xtables-monitor 追踪数据包在 iptables ......
FIT9136 算法编程基础
FIT9136 Algorithms andProgramming Foundations inPythonAssignment 3May 20231Table of Contents1. Key Information2. Instruction2.1. User Class2.2. Custom ......
按键滤波算法
按键信号的采集通常采用GPIO口的输入电平方式,但由于按键电容充放的过程,通常会产生毛刺或抖动。为了去除这些干扰信号,需要对按键信号进行滤波。以下介绍几种常用的按键滤波算法: 1、稳态滤波算法:按键信号采集时,通过实现一个加权器,在采集的多次信号中加权平均每个采集值,一计算出有可靠信息含量的稳态信号 ......
stm32 adc采样滤波算法
1、简单移动平均滤波算法(SMA):采样数据作为滤波器的输入,输出为移动平均值,即取最近一段采样值的平均值作为输出。简单移动平均滤波算法实现简单,计算速度快,但只适用于信号变化缓慢的场合。 // 简单移动平均滤波算法 #define N 10 // 采样点数 float Filter_Arr[N]; ......
前端 & 设计师常用图标资源库
# 1. Iconfont * 阿里倾力打造的矢量图标管理、交流平台,设计师将图标上传到 iconfont 平台,用户可以自定义下载多种格式的icon,平台也可将图标转换为字体,便于前端工程师自由调整与调用。 * 地址:Iconfont ![](https://img2023.cnblogs.com ......
一文理清排序算法中的直接插入、快排和希尔排序的区别
至此,我们我们已经向大家介绍了冒泡排序、选择排序、插入排序、快速排序、希尔排序等五种经典的排序算法。除此以外,还有堆排序、归并排序、桶排序、计数排序等一些经典的排序算法。大家会发现,我们介绍排序算法的步骤和过程都是相同的,基本都包含算法概念、思想和原理、算法步骤,以及编码实现等几个部分。在本篇的最后... ......
超实用!常用开源许可证有啥区别。
导读 电脑中的软件都有License,开源软件也不例外。不过开源软件的开源许可证那么多种,又都有什么区别呢?让我们上网搜搜看。 定义 下面是摘录百度百科的定义: license是版权许可证。相当于软件版权。软件版权属于知识产权的著作权范畴,具有知识产权的特征,即时间性,专有性和地域性。软件版权在法律 ......
go 常用命令总结
转载请注明出处: go build:编译包和依赖项,生成可执行文件。命令用于编译包和依赖项,生成可执行文件。当对Go程序进行修改后,需要使用go build命令重新编译程序,以生成新的可执行文件。该命令不会自动下载和安装依赖项,需要事先使用go get命令下载依赖项 go run:编译并运行Go程序 ......
算法学习day49动态规划part10-
package LeetCode.DPpart10; /** * 121. 买卖股票的最佳时机 * 给定一个数组 prices ,它的第i 个元素prices[i] 表示一支给定股票第 i 天的价格。 * 你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来 ......
算法 in Golang:Breadth-first search(BFS、广度优先搜索)
# 算法 in Golang:Breadth-first search # (BFS、广度优先搜索) ## 最短路径问题 Shortest-path problem - 从 A 到 F 点有多条路径 ## 解决问题的算法 Breadth-first Search(广度优先搜索) 1. 将问题建模为图 ......
Arthas启动与常用的命令(一)
### arthas 有什么用? Arthas 是Alibaba开源的Java诊断工具,深受开发者喜爱。 以下是官方文档提到的 arthas 的作用。 当你遇到以下类似问题而束手无策时, Arthas 可以帮助你解决。 * 这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception? ......
常用编译命令
**1.通过g++命令编译多文件并生成程序** `g++ -g main.cpp second.cpp -o main.exe` 该方法有个明显的缺点,就是在`-g`后面需要列出所有需要编译的cpp文件,如果文件比较多,用起来就比较麻烦,而且每次编译都需要完整的命令。 **2.通过配置vscode使 ......
linux常用操作命令
cd 浏览文件和目录cd /home/username / Movies。 ls 查看文件夹内容 ls 文件夹、ls -al。 cat输出文件内容 cat file1 file2>file3。 cp 复制cp screen.jpg/home /username/ Pictures。 mv 移动文件m ......
常用的 SQL Server 关键字及其含义
SQL Server 是一种关系型数据库管理系统(RDBMS),提供了用于管理和操作数据库的各种关键字。 以下是一些常用的 SQL Server 关键字及其含义: 1. SELECT: 用于从数据库中检索数据。 2. INSERT: 用于将新记录插入到数据库表中。 3. UPDATE: 用于更新数据 ......
算法 in Golang:Quicksort(快速排序)
# 算法 in Golang:Quicksort(快速排序) ## Quicksort(快速排序) - 快速排序 O(nlog2^n),比选择排序要快 O(n²) - 在日常生活中经常使用 - 使用了 D & C 策略(分而治之) ## 使用 Quicksort 排序数组 - 不需要排序的数组(也就 ......