自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 收藏
  • 关注

原创 DFS回溯剪枝|KMP通过数组记录减少判断子字符串|思路

next[j-1]] 已经是一个匹配的前缀,我们可以从这个前缀的末尾开始,尝试与 T 中的下一个字符匹配。如果 S[j] 和当前要比较的字符不匹配,这意味着 S[j] 不能作为前缀的一部分,因此需要找到一个更短的前缀,使得 S[0…if 条件的作用:当 S.charAt(j) == S.charAt(i) 时,说明当前字符匹配,j 可以安全地向前移动一位,因为 S[0…无论 S.charAt(j) 和 S.charAt(i) 是否匹配,next[i] 都被设置为 j 的当前值。A与D,不相等了了。

2024-07-08 13:03:12 831

原创 volatile

1volatile会发出【lock指令对当前cpu缓存】进行上锁,这样就会让当前cpu独占缓存,让其他cpu的此缓存段失效,因为加了lock,接下来操作的指令会独占数据写回【主存和缓存】,其他cpu因为缓存失效就会去【主存读数据重新写入缓存】,就保证了不同cpu之间的缓存一致性。对多个线程要访问|操作的变量枷锁,每次都重新获得主存中的新的变量。包下的一个原子类,用于提供无锁的线程安全编程。【Unsafe 提供了原子操作】

2024-06-20 21:14:21 311 1

原创 看不懂代码看设计模式

:包括类型参数、实际类型参数的上下限等。

2024-06-20 20:58:18 908

原创 MySQL知识超详细全面归纳版

https://www.mubu.com/doc/ExBu0RZ1fe 幕布文档;MySQL知识集合|all in。

2024-04-06 22:38:20 135

原创 简单springboot项目,出错+运行成功对比

同时,还需要进行相应的数据库配置和实体类的定义,以及编写相应的Repository接口和Service类来实现数据库的增删改查功能。'在例如 Java 高级语言中,都会嵌入(支持)SQL 能力,一般我们可以直接在代码或配置文件中编写 SQL 语句,如果一个 SQL 语句在 “编译阶段” 就已经能确定 主体结构,那我们称之为静态 SQL,如果一个 SQL 语句在编译阶段无法确定主体结构,需要等到程序真正 “运行时” 才能最终确定,那么我们称之为动态 SQL'@Repository是属于Spring的注解。

2024-01-30 22:55:34 807 1

原创 org.springframework.web.servlet.DispatcherServlet.noHandlerFound No mapping for POST /sXXX

org.springframework.web.servlet.handler.AbstractHandlerExceptionResolver.logException Resolved [org.springframework.web.HttpRequestMethodNotSupportedException: Request method ‘POST’ not supported]来源:http://t.csdnimg.cn/HXSWU。

2024-01-18 15:20:49 1366

原创 springmvc:DispatcherServlet.noHandlerFound No mapping for GET /springmvc01/xx

1、配置文件spring_mvc.xml

2024-01-17 16:04:20 1025 1

原创 【插入希尔归并选择冒泡优化快排+重看递归】

每次处理都是两两相邻的比较[稳定的,判断的时候用>,而非>=],将大的往后传递【最终每一趟都把最大的传递到最后面了】时间复杂度: o( n^2) 最好的情况:O(n);//每次都走break;打扑克:手里面大的是排好序的,另外是待排序的,一张一张插入后要保证有序。2、从无序中找到最小值,排在有序的后面【无需‘移动‘】【不稳定排序】每一趟最坏的情况:每个都交换O(n^2);对于与已经排好序的则变成了O(n);1、每个泡泡都要处理。

2023-10-21 02:06:30 76 2

原创 Java栈思想应用——四则运算|附括号匹配

栈顶优先级>=当前优先级,则符号出栈,出两个操作数,进行计算,结果入栈,当前符号入栈;3、直至遍历完整个字符串,不为空则继续出栈计算结果压栈,直至符号栈为空;2、遇到符号,栈为空则入栈;否则需要比较是否计算。数组:尾巴作为栈顶,方便进入出去;链表:头结点为栈顶,方便插入删除。

2023-10-07 14:44:21 306

原创 pycharm连接数据库执行SQL语句|过程注释

这样做的好处是,当我们将该文件作为模块导入到其他文件中时,这些只在主程序运行时执行的代码不会被执行,避免了不必要的运行。同时,当我们直接运行该文件时,这些代码会被执行,方便我们进行测试和调试。在使用pymysql访问数据库执行SQL语句后,返回的结果是一个元组(tuple)的列表(list)。可以使用数组的形式输出是因为返回的结果是一个列表,可以通过循环遍历每个元组,再通过索引访问每个元组中的元素。每个元组表示数据库中的一行数据,元组中的每个元素表示该行中的一个列的值。的值则是模块的名称。

2023-10-04 10:43:10 1232

原创 实现栈Java|增删判空大小|详细注解

实现栈的基本操作+注解:入出、栈的大小、判空

2023-09-28 10:50:03 83

原创 约瑟夫问题|循环单向链表|详细注思路

【代码】约瑟夫问题|循环单向链表|详细注思路。

2023-09-27 23:19:49 53

原创 【力扣3无重复字符的最长字串|滑动窗口|哈希Map、Set不同】

重复就记录下当前的最长字串长度,清理记录下的不重复字符,回过头,再重新判断充不重复。-不重复就持续往后判断;

2023-09-20 20:50:26 45 1

原创 【贪心算法】力扣举例子

/子问题:当前可跳跃最大值 jumpm=max(jumpm,nums[i]+i);//昨日股票不操作和昨日的金额今日买入;昨日的金额不操作和昨日的股票今日卖出。跳了之后,再继续判断最优跳跃,跳跃数+1;例题2:leetcode122。例题四:leetcode45。子问题:当天的最大利润;当天买入、卖出/不操作;初始: dp0=0;

2023-09-14 17:08:05 100 1

原创 详细动态规划-一维二维力扣例题

动态规划思路:1、数组元素的含义?//2、数组元素之间的关系。2、数组元素之间的关系式。//1、数组存储的含义。

2023-09-12 16:00:53 68

原创 快速排序分治递归

#include <iostream>using namespace std;int KuaiPai(int a[], int l, int r);void quicksort(int a[], int l, int r);void print(int a[],int i);int flag = 0;void print(int a[],int i){ cout << "第" << flag << "次排序:" << end.

2022-05-12 11:23:24 85

原创 算法回溯法-0-1背包c++

// 回溯法0-1背包.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。//////思路差异:// 解为子集树:<=c,可进入左子集;>maxvule,则可以进入由结点// // ////#include <iostream>#include <algorithm>using namespace std;class Knap {public: void Backtrack(int i); int bound(int i); int c,

2022-04-14 20:15:55 1026 1

原创 回溯法-子集树递归树-装载问题

回溯法深度优先策略(回忆深度优先遍历二叉树思路)解题步骤: 1)针对所给问题,定义问题的解空间; 2)确定易于搜索的解空间结构; 3)以深度优先方式搜索解空间,并在搜索过程中用剪枝函数(****约束函数除去不满足约束的子树,限界函数减去得不到最优解的子树**)**避免无效搜索## 子集树和递归树扩展结点:一个正在产生儿子的结点称为扩展结点。活结点:一个自身已生成但其儿子还没有全部生成的节点称做活结点。死结点:一个所有儿子已经产生的结点称做死结点。1.当所给的问题是从n个元素的集合S中找

2022-04-14 14:51:23 1606 2

原创 全排列perm

#include <iostream>using namespace std;void perm(int a[], int k, int m);inline void swap(int& a, int& b);void perm(int a[], int k, int m){ if (k == m) { for (int i = 0; i <= m; i++) cout << a[i];

2022-04-13 01:36:59 428

原创 动态规划-流水作业调动Johnson法则

//问题分析:// 1.作业合集N={1,2,3…n},//S属于N;M1上不停止的工作,// 因此M1加工S中的作业时,M2还在加工N-S中的某作业,// 需要等时间t后才能利用M2.// 2.这种情况下,完成S作业的最短时间记为T( S,t);//t为安排{N-S}后面的等待时间// 流水作业调度问题的最优值为T(N,0);//M2无需等待的情况// 3.对于n个作业,其最优调度为Π,时间为aΠ(1)+T’;// T’为M2的等待时间为bΠ(1)时,作业aΠ(2,。。。。n)的最优时间/

2022-04-13 00:09:36 732

原创 贪心算法-单源最短路径

单源最短路径

2022-04-07 20:20:46 1141

原创 动态规划-最大公共子序列c++

最长公共子序列-动态规划两个基本要素!!!!!!// 1最优子结构// 从后往前推,x,y的最优结果包含了x,y前缀的!最长公共子序列// xn=ym,则该元素一定在最长公共子序列里面---》xn!=ym,(xn-1,ym) or(xn,ym-1)里面继续找// 大问题变小

2022-04-05 10:16:21 719

原创 动态规划矩阵连乘c++

矩阵连乘法//维数分别为10*100 , 100*5 , 5*50 // 按此顺序计算需要的次数// ((A1*A2)*A3):10X100X5+10X5X50=7500次,//按此顺序计算需要的次数// (A1*(A2*A3)):10*5*50+10*100*50=75000次 //ai*(bi*bj

2022-03-30 21:08:26 1520

原创 动态规划-0-1背包问题c++实现

//目标是书包内物品的总价值,而变量是物品和书包的限重//根据动态规划解题步骤(问题抽象化、建立模型、寻找约束条件、//判断是否满足最优性原理、//找大问题与小问题的递推关系式、填表、寻找解组成)

2022-03-29 23:17:10 1118

原创 算法分析入门体会1一筐鸡蛋问题

一筐鸡蛋入门算法分析体会

2022-03-07 20:02:13 365 1

原创 python数字计时器类# 定义⼀个类描述平⾯上的点并提供移动点和计算到另⼀个点距离的⽅法

#数字计时器类from time import sleep#从time模块中引入sleep函数,使用sleep函数可以让程序休眠(推迟调用线程的运行)。class Jishi(object): '''数字时钟''' def __init__(self,shi=0, fen=0 , miao=0):#默认参数!!!!!!!!! self.shi = shi self.fen = fen self.miao = miao def run

2022-01-29 19:20:18 1200

原创 python练习

#阶乘#方法一:import time#from math import factorial# def fac(n):#定义函数# return factorial(n)#方法二:def fac(n): if( n==0 ): return 1 elif (n>=1): return n*fac(n-1) else: print("error")for n in range(1,101):#1->1

2022-01-24 14:34:10 436

原创 读取shoes.txt python dict、list、 string

f = open('shoes.txt')lines = f.read().splitlines()#不分行、[, , ,、、、,]读出来print(lines)title = ['brand', 'color', 'size']rst = []for line in lines: d = {} _line = line.split() for i in range(0, len(title)): d[title[i]] = _line[i]#dict :k

2022-01-23 09:21:24 727 1

原创 python函数可变参数、默认参数

def changeitem(a_list): a_list.append([1,2,3]) a_list.append("123") print("函数内取值:",a_list) returna_list=[100,"123"]print(a_list)changeitem(a_list)print("函数外面的值:",a_list)结果:[100, ‘123’]函数内取值: [100, ‘123’, [1, 2, 3], ‘123’]函数外面的值: [1

2022-01-19 19:35:22 521

原创 python#字母向后移动两个位置,解密

#字母向后移动两个位置a_string="g fmnc wms bgblr rpylqjyrc gr zw fylb. rfyrq ufyr amknsrcpq ypc dmp. bmgle gr gl zw fylb gq glcddgagclr ylb rfyr'q ufw rfgq rcvr gq qm jmle. sqgle qrpgle.kyicrpylq() gq pcamkkclbcb. lmu ynnjw ml rfc spj."print("".join([chr(ord('a')+(

2022-01-19 08:57:31 2433

原创 枚举——称硬币

枚举称硬币

2022-01-12 10:35:36 251

原创 枚举——生理周期

//枚举生理周期#include <iostream>using namespace std;int main(){ int i; int g = 10;//假设给定日子为10 for (i = g + 1; i % 23; i++); for (; i % 28; i += 23); for (; i % 33; i += 28);//这样走的少,开始只用找到小的数的最小倍数,后面跳的步长越来越大 //914天后再次出现高峰 cout << i - g &..

2022-01-11 23:16:32 391 1

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除