首页 > 编程语言
【数据结构与算法】字符串匹配(后缀数组)
概念 简介 在计算机科学里, 后缀数组(英语:suffix array)是一个通过对字符串的所有后缀经过排序后得到的数组。此数据结构被运用于全文索引、数据压缩算法、以及生物信息学。 后缀字符串 后缀字符串:从后往前依次递增截取的字符串。长度为 n 的字符串有 n 个后缀 后缀数组和rank数组 后缀 ...
分类:编程语言   时间:2021-08-10 23:36:35    收藏:0  评论:0  赞:0  阅读:41
Spring Boot参数校验以及分组校验的使用
一 前言 做web开发有一点很烦人就是要对前端输入参数进行校验,基本上每个接口都要对参数进行校验,比如一些非空校验、格式校验等。 如果参数比较少的话还是容易处理的一但参数比较多了的话代码中就会出现大量的if-else语句。使用这种方式虽然简单直接,但是也有不好的地方,一是降低了开发效率,因为我们需要 ...
分类:编程语言   时间:2021-08-10 23:35:40    收藏:0  评论:0  赞:0  阅读:41
swift文件调用oc分类时崩溃解决办法(可能全网唯一)
背景 oc为基础创建的sdk混编工程,在被sdk关联的混编demo工程中swift文件调用时,会崩溃,提示找不到sdk中oc分类方法。常规的,在demo中设置-Objc和-all_load也还是会崩。 工程配置: 网上找了一圈都找不到能解决此问题的答案。 峰回路转 在微信群里提问后,经热心群友提示, ...
分类:编程语言   时间:2021-08-10 23:35:28    收藏:0  评论:0  赞:0  阅读:40
c/c++动态检测内存错误利器 - ASan(转)
https://www.extutorial.com/blog/391954 c/c++动态检测内存错误利器 - ASan 由 Existence 提交于 周四, 04/15/2021 - 21:44 ASan,即Address Sanitizer,是一个适用于c/c++的动态内存错误检测器,它由一 ...
分类:编程语言   时间:2021-08-10 23:34:50    收藏:0  评论:0  赞:0  阅读:60
c++ 异常记录
vector的排序使用的iterator必须先+1 再-1,否则报溢出警告,不能正确排序遍历map获取到的是对象副本,需要引用,不能直接拿来做引用 fortmat只支持原始类型,wstring,string要转为const char*Log文件夹不存在排序的时候从0开始排序ui控件设置 的线程问题获 ...
分类:编程语言   时间:2021-08-10 23:32:55    收藏:0  评论:0  赞:0  阅读:22
Python实用案例,python10行脚本打造实时截图识别OCR,轻松搞定“百度文库”
前言 今天,我们就来做一款实时截图识别的小工具 开发工具 Python版本: 3.9.4 相关模块: PIL模块 keyboard模块 pytesseract模块 以及一些Python自带的模块 效果图展示 源码分析 等待用户截图 此处需要借助贴图神器(Snipaste) 其中“f1”是截图的快捷键 ...
分类:编程语言   时间:2021-08-10 23:32:29    收藏:0  评论:0  赞:0  阅读:32
冒泡排序
冒泡排序 算法描述 ? 比较相邻的元素。如果第一个比第二个大,就交换它们两个; Python版本 def bubbleSort(num_list): for i in range(len(num_list)-1): for j in range(len(num_list)-i-1): if num_ ...
分类:编程语言   时间:2021-08-10 23:32:07    收藏:0  评论:0  赞:0  阅读:28
408算法练习——判断高度平衡二叉树
判断平衡二叉树 问题链接:https://leetcode-cn.com/problems/balanced-binary-tree/ 一、问题描述 给定一个二叉树,判断它是否是高度平衡的二叉树。 本题中,一棵高度平衡二叉树定义为: 一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1 。 ...
分类:编程语言   时间:2021-08-10 23:30:11    收藏:0  评论:0  赞:0  阅读:23
阶乘 递归算法思想
1、递归简述递归作为编程里最为重要的编程方法之一,其对于解决某些复杂的问题十分有效,并且相对于迭代,其过程在直观上更容易理解。 2、递归的基本思想递归并不是简单的自己调用自己,也不是简单的交互调用。递归在于把问题分解成规模更小、具有与原来问题相同解法的问题。这些都是不断的把问题规模变小,新问题与原问题有着相同的解法。但是并不是所有所有可以分解的子问题都能使用递归来求解。一般来说使用递归求解问题需要
分类:编程语言   时间:2021-08-10 23:29:08    收藏:0  评论:0  赞:0  阅读:26
拓扑排序 (DFS和BFS及判断是否有环)
一、什么是拓扑排序? 在图论中,**拓扑排序(Topological Sorting)是一个有向无环图(DAG, Directed Acyclic Graph)**的所有顶点的线性序列。且该序列必须满足下面两个条件: 每个顶点出现且只出现一次。 若存在一条从顶点 A 到顶点 B 的路径,那么在序列中 ...
分类:编程语言   时间:2021-08-10 23:28:55    收藏:0  评论:0  赞:0  阅读:25
排序篇--归并排序
算法描述: 归并排序是建立在归并操作上的一种有效的排序算法。该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为2-路归并。 动画演示: 实现逻辑: 把 ...
分类:编程语言   时间:2021-08-10 23:26:50    收藏:0  评论:0  赞:0  阅读:28
Java中getResourceAsStream的用法
首先,Java中的getResourceAsStream有以下几种: 1. Class.getResourceAsStream(String path) : path 不以’/'开头时默认是从此类所在的包下取资源,以’/'开头则是从ClassPath根下获取。其只是通过path构造一个绝对路径,最终 ...
分类:编程语言   时间:2021-08-10 23:26:29    收藏:0  评论:0  赞:0  阅读:23
Python中IO编程-StringIO和BytesIO
Python在内存中读写数据,用到的模块是StringIO和BytesIO StringIO >>> from io import StringIO >>> f = StringIO() >>> f.write('hello') 5 >>> f.write(' ') 1 >>> f.write('w ...
分类:编程语言   时间:2021-08-10 23:24:29    收藏:0  评论:0  赞:0  阅读:30
贪心算法
贪心算法指的是,在对问题求解时,总是做出当前看来最好的选择。也就是说,不从整体最优上加以考虑,所做出的是某种意义上的局部最优解。 注意:贪心算法并不保证会得到最优解,但是在某种问题上贪心算法就是最优解。 一、背包问题 问题可以描述为:给定一组物品,每种物品都有自己的重量w和价格v,在限定的总重量W内 ...
分类:编程语言   时间:2021-08-10 23:23:56    收藏:0  评论:0  赞:0  阅读:26
数组拓展
1.类方法 Array.from() 将类数组转数组Array.of() 创建数组 // Array.from() const divs = document.getElementsByTagName('div') Array.from(divs).forEach(v => { console.lo ...
分类:编程语言   时间:2021-08-10 23:23:36    收藏:0  评论:0  赞:0  阅读:19
Python操作Execl
用程序操作Execl可以极大地提高生产力,下面来说一说用Python控制Execl表格。 先来说一下execl 表的结构,一个Execl文件称之为workbook,一个Workbook里面有多个Sheet(表),一个Sheet中有以字母命名的列坐标和以数字命名的行坐标。cell为单元格。 Pytho ...
分类:编程语言   时间:2021-08-10 23:23:26    收藏:0  评论:0  赞:0  阅读:22
谈谈Spring对于@Configuration的Cglib代理
1、现象 众所周知,Spring中配置类是用来代替配置文件的,在老一些的日子里面我们使用XML配置,而如今大多使用JavaBean的方式配置。 一个简单的配置类如下: @Configuration @ComponentScan("com.dh") public class AppConfig { @ ...
分类:编程语言   时间:2021-08-10 23:21:59    收藏:0  评论:0  赞:0  阅读:35
002.python自我记录
第一次靠自己的逻辑写出一段对现阶段的自己颇有挑战性的代码。 只是业余时间学习代码确实专注力不足。不知有生之年能否成为自己幻想中的那个人。 Q:试用#号输出一个长方形,用户可以指定宽和高,如果长为3,高为4,则输出一个横着有3个#号,竖着有4个#号的长方形 width = int(input("inp ...
分类:编程语言   时间:2021-08-10 23:19:35    收藏:0  评论:0  赞:0  阅读:22
算法专题——最小生成树
最小生成树的概念 prim算法以及kruskal算法,原生问题中是求解将n个节点连接并花费最小而形成的树的算法。还可以求解最大的边权最小的问题。 相关题目后续补充 求最小生成树的算法 Prim算法 总是链接离中心最近的一个节点到树中。 O(n ^ 2) 原理解释: 反证法:将当前与外界直接相连的权值 ...
分类:编程语言   时间:2021-08-10 23:17:39    收藏:0  评论:0  赞:0  阅读:18
剑指 Offer 25. 合并两个排序的链表
话不多说,先上题目 输入两个递增排序的链表,合并这两个链表并使新链表中的节点仍然是递增排序的。 示例1: 输入:1->2->4, 1->3->4 输出:1->1->2->3->4->4 限制: 0 ? 链表长度 ? 1000 来源:力扣(LeetCode) /** * Definition for ...
分类:编程语言   时间:2021-08-10 23:14:50    收藏:0  评论:0  赞:0  阅读:12
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!