算法10.23 10 23
敏感词过滤--DFA算法及代码案例
我们应该都遇见过敏感词过滤,比如当我们输入一些包含暴力或者色情的文本,系统会阻止信息提交。敏感词过滤就是检查用户输入的内容有没有敏感词,检查之后有两个策略。 直接阻止信息保存,接口返回错误信息 允许信息保存,但是会把敏感词替换为*** 不管是哪种策略,首先都得找到是否包含敏感词,这个判断一般是在服务 ......
Java 必会10大的经典算法
Java 必会10大的经典算法 https://github.com/hustcc/JS-Sorting-Algorithm 冒泡排序:思路-两层循环;外层循环控制比较的轮数,内层循环控制每一轮的比较和交换。在每一轮中,通过比较相邻的两个元素,如果前一个元素大于后一个元素,则交换它们的位置。 经过多 ......
界面组件DevExpress WPF v23.1新版亮点 - 启动和内存优化
DevExpress WPF拥有120+个控件和库,将帮助您交付满足甚至超出企业需求的高性能业务应用程序。通过DevExpress WPF能创建有着强大互动功能的XAML基础应用程序,这些应用程序专注于当代客户的需求和构建未来新一代支持触摸的解决方案。 无论是Office办公软件的衍伸产品,还是以数 ......
数据结构与算法 - 链表
# 双链表的的基本结构 从 STL 源码抽出的基本双链表结构 ## 代码 ```c++ #ifndef _GRAVER_GLIB_LIST_H_ #define _GRAVER_GLIB_LIST_H_ #include #include "graver/util/log_util.h" names ......
每日总结23.6.30
今日学习字符串之split() String str = new String("13,235sdf+fnk,055s,fkd, "); String[] newStr = str.split(","); for(int i = 0;i < newStr.length;i++){ System.ou ......
第一次用iPhone!这10个设置技巧一定少不了
第一次用iPhone,一定要看!这样才能让你的手机后续更好的使用! 1、充电 iPhone手机前几次充电可把电池充满,但千万别把电池耗尽再充,也不要经常低于20%后再充。有时间就顺手充一下,同时建议充电器最好使用苹果原装充电器或宝宝存是大品牌充电器(友友买的安克,还不错) 2、拍照 自拍时可根据自己 ......
快看!这10个设置技巧,能让iphone14更好用
小伙伴们,iphone14pro系列一定要这样设置起来,用起来才更丝滑哦~ 01、 【设置】—【Apple ID、iCloud、媒体与购买项目】—【查找】—【查找我的iPhone】—打开【发送最后的位置】 02、 【设置】—【无线局域网】—打开【启用WAPI】 03、 【设源码置】—【通用】—【软件 ......
决战圣地玛丽乔亚重新归来之Day58--算法回溯
电话号码 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 示例: 输入:"23" 输出:["ad", "ae", "af", "bd", "be", "bf", "cd", "ce", "cf"]. 多少个数 ......
10 线程的状态
# 10 线程的状态 ## 操作系统层面的线程状态 ![](https://img2023.cnblogs.com/blog/2764805/202306/2764805-20230629231723635-478493066.png) 1. **初始状态** 仅是在语言层面创建了线程对象,还未与操 ......
C语言学习笔记:1~10章---基本知识
基本知识 1 #include <stdio.h> 2 int main(void) /* a simple program */ 3 { 4 int num; /* define a variable called num */ 5 num = 1; /* assign a value to nu ......
欧几里得(及其扩展算法)
# 欧几里得算法 - 算法内容 计算两个数的最大公约数的算法,也叫辗转相除法。即: gcd(a,b)=gcd(b,a%b)。 - 数学证明 设gcd(a,b)=d,则必定有:d|a且d|b,则必定有d|(ax+by)而a%b=a-a/b*b,所以d|(a%b),则d必定为b和a%b的约数,并且a%b ......
第10.3篇 html基础标签
# HTML ## 一、HTML简介 ### 1. 什么是HTML HTML:HyperText Markup Language,超文本标记语言。 作用:编写网页。 ### 2. 写一个简单的HTML ``` page title hello, kitty ``` ### 3. HTML的语法特点 ......
算法导论-第22章-BFS和DFS
本章将介绍图的表示和图的搜索。图的搜索指的是跟随图中的边来访问图中的每个结点。图搜索是整个图算法领域的核心。22.1介绍图的两种表示方法:邻接链表和邻接矩阵。22.2介绍广度优先搜索(BFS)。22.3介绍深度优搜索(DFS)。 # 22.1 图的表示 对于图 $G=(V, E)$,有用两种标准表示 ......
算法导论-第33章-最近点对问题
# 最近点对问题 **问题描述**:在 $n \ge 2$ 个点的集合 $Q$ 中寻找最近点对的问题,“最近”指的是欧几里得距离最小,即点 $p_1=(x_1, y_1)$ 和 $p_2=(x_2, y_2)$ 之间的欧几里得距离 $d=\sqrt{(x_1-x_2)^2+(y_1-y_2)^2}$ ......
算法导论-第16章-贪心算法
求解最优化问题时候通常要经过一串步骤,每一步都有多种选择。对于很多问题来说,用动态规划求最优解就是杀鸡用牛刀,可以使用更简单的算法。 **贪心算法**(greedy algorithm)在每一步都做出当时看起来是最佳的选择。也就是说,它综述做出局部最优的选择,希望通过局部最优解得到全局最优解。 ** ......
算法导论-第15章-动态规划
**动态规划**(dynamic programming)的思想是**分治思想**和**解决冗余**。 - 与分治法相似的是 - 将原问题**分解为若干个子问题**,先求解子问题,然后从这些子问题的解得到原问题的解。 - 与分治法不同的是 - 经分解的子问题**往往不是相互独立的**。若用分治法来解 ......
算法导论-第13章-红黑树
第12章介绍了一棵高度为$h$的二叉搜索树,它可以支持任何一种基本动态集合操作,如`SEARCH`、`PREDECESSOR`、`SUCCESSOR`、`MINIMUM`、`MAXIMUM`、`INSERT`和`DELETE`等,其时间复杂度均为$\Omicron(h)$。因此,如果搜素树的高度较低 ......
算法导论-第17章-摊还分析
本章主要涉及理论分析,感觉第3版讲的不是很好(也有可能是翻译的语句不通顺),这里搬运了知乎上的文章。 - https://zhuanlan.zhihu.com/p/536470404 - https://zhuanlan.zhihu.com/p/577232877 - https://zhuanla ......
算法导论-第14章-数据结构的扩张
本章讨论通过扩展红黑树构造出的两种数据结构。14.1节介绍一种支持一般动态集合上顺序统计操作的数据结构。通过这种数据结构,我们可以快速地找到一个集合中的第 $i$ 小的数,或给出一个指定元素在集合的全序中的位置。14.2节抽象出数据结构的扩张过程,并给出一个简化红黑树扩张的定理。14.3节使用这个定 ......
算法导论-第21章-用于不相交集合的数据结构
21.1节描述不相交集合数据结构支持的各种操作,并给出一个简单的应用。21.2节使用一种简单链表结构来实现不相交集合。21.3节使用有根树来实现,使用树表示的运行时间理论上好于线性时间,然而对于所有的实际应用它确是线性的。 # 21.1 不相交集合的操作 一个**不相交集合数据结构**(disjoi ......
算法导论-第4章-分治法
# 回忆 在2.3.1中,归并排序使用了分治法。在分治法中,当递归地求解一个问题,在每层递归中执行如下三步骤: - 分解(Divide):将问题划分为子问题,子问题的形式与原问题一样,只是规模更小。 - 解决(Conquer):递归地求解出子问题。如果子问题的规模足够小,则停止递归,直接求解。 - ......
算法导论-第6章-堆排序
# 6.1 堆及堆的性质 **(二叉)堆**可以看作完全二叉树,其存储结构通常是**数组**,表示堆的数组A中有两个重要属性:$A.length$表示数组元素的个数;$A.heap-size$表示有多少个堆元素在数组中,$0 \le A.heap-size \le A.length$。 ![Figu ......
算法导论-第7章-快速排序
# 7.1 快速排序的描述 对一个典型的子数组$A[p..r]$进行快速排序的三步分治过程: - **分解**:数组$A[p..r]$被划分为两个(可能为空)的子数组$A[p..q-1]$和$A[q+1..r]$,使得$A[p..q-1]$中的每一个元素都小于等于$A[q]$,而$A[q+1..r] ......
算法导论-第8章-线性时间排序
# 前言 此前我们已经学习了几种$\Omicron(n \log n)$的排序算法,这些排序算法都有一个有趣性质,在排序的最终结果中,各元素的次序依赖于它们之间的比较,我们将这类排序称为**比较排序(comparison sort)**。 8.1节将要证明**对包含$n$个元素的输入序列,在最坏情况 ......
算法导论-第9章-中位数和顺序统计量
一个包含 $n$ 个元素的集合中的第 $i$ 个**顺序统计量**指集合中的第 $i$ 小的元素。**最小值**是第 $1$ 个顺序统计量($i= 1$),**最大值**是第 $n$ 个顺序统计量($i = n$)。 9.1节将讨论从集合中找出最小值和最大值的问题。9.2节将分析一个实用的算法,它在 ......
文心一言 VS 讯飞星火 VS chatgpt (51)-- 算法导论6.2 3题
# 三、当元素 A[i] 比其孩子的值都大时,调用 MAX-HEAPIFY(A.i)会有什么结果? ## 文心一言: 当元素 A[i] 比其孩子的的值都大时,调用 MAX-HEAPIFY(A, i) 会将 A[i] 与其孩子中的最小值进行交换,并将 A[i] 视为新的根节点。这个操作会使得以 A[i ......
学不会的排序算法
#什么是排序 所谓排序,就是使一串记录,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作。排序算法,就是如何使得记录按照要求排列的方法。 #排序算法的评价标准 (1)时间复杂度(2)空间复杂度(3)排序方式(4)稳定性 ![](https://img2023.cnblogs.com/bl ......
How To Install and Enable SSH Server on Debian 10
https://devconnected.com/how-to-install-and-enable-ssh-server-on-debian-10/ How To Install and Enable SSH Server on Debian 10 written by Schkn This tu ......
10.动态内存管理
#### 书写程序的原则:==谁申请地址,待程序执行结束后谁要释放==。动态内存管理的函数包括有`malloc calloc realloc free`,其中`free`函数要与前三者在一个函数中同时使用或者在同一个模块中。 ### 一.`malloc` #### 函数定义:`void *mallo ......
Hutool—雪花算法
一、介绍Hutool工具: 官网地址:简介 | Hutool Hutool是一个Java工具库,其中包含了各种实用的工具类和方法。通过静态方法封装,降低相关API的学习成本,提高工作效率,使Java拥有函数式语言般的优雅,让Java语言也可以“甜甜的”。Hutool中的工具方法来自每个用户的精雕细琢 ......