- 博客(97)
- 资源 (1)
- 收藏
- 关注
原创 数组题目总结 ---- 田忌赛马
## 思路和代码:- 本质上就是两个队列给它排序,我方最大和敌方max打, - 打得过,就将我方max加入res当中; - 如果打不过,就让我方min打地方的max,将我方min放入res当中。
2023-09-18 22:18:41
298
原创 数组题目总结 -- 滑动窗口算法延伸:字符串匹配算法(KMP,Rabin-Karp )
一. 重复的DNA序列思路和代码:I. 博主的做法II. 东哥的做法法一:hash 暴力法法二:hash + 滑动窗口二. Rabin-Karp 算法三. KMP 算法
2023-07-26 14:46:47
587
原创 数组题目总结 -- 滑动窗口算法
零. 模板一. 最小覆盖子串思路和代码:I. 博主的做法II. 东哥的做法二. 字符串的排列思路和代码:I. 博主的做法II. 东哥的做法三. 找到字符串中所有字母异位词思路和代码:I. 博主的做法II. 东哥的做法四. 最长无重复子串思路和代码:I. 博主的做法II. 东哥的做法
2023-07-24 21:48:33
281
原创 数组题目总结 -- 单调栈问题
零. 单调栈一. Next Greater Element(单调栈问题模板)题目简述:思路和代码:I. 思路II. 代码二. Next Warmer Weather题目简述:思路和代码:I. 思路II. 代码三. Next Greater Elements(循环数组)题目简述:思路和代码:I. 思路II. 代码四. 不同字符的最小子序列思路和代码:I. 博主的做法II. 东哥的做法五. 去除重复字母思路和代码:
2023-06-14 21:05:05
462
原创 数组题目总结 -- 随机数问题
一. O(1) 时间插入、删除和获取随机元素思路和代码:I. 博主的做法II. 东哥的做法III. 其他做法二. 黑名单中的随机数思路和代码:I. 博主的做法II. 东哥的做法
2023-06-06 18:23:29
784
原创 数组题目总结 -- 花式遍历
一. 反转字符串中的单词思路和代码:I. 博主的做法II. 东哥的做法III. 其他做法1IV. 其他做法2二. 旋转图像思路和代码:I. 博主的做法II. 东哥的做法三. 旋转图像(逆时针旋转90°)思路和代码:I. 博主和东哥的做法四. 矩阵的螺旋遍历思路和代码:I. 博主的做法II. 东哥的做法五. 构建螺旋矩阵思路和代码:I. 博主的做法II. 东哥的做法
2023-05-24 22:10:25
829
原创 数组题目总结 -- 差分数组
只要花费O(1)的时间修改 diff 数组,就相当于给 nums 的整个区间做了修改。多次修改 diff,然后通过 diff 数组反推,即可得到 nums 修改后的结果。差分数组的主要适用场景是频繁对原始数组的某个区间的元素进行增减。前缀和主要适用的场景是原始数组不会被修改的情况下,频繁查询某个区间的累加和。这里犯了个小错误:diff[updates[i][1] + 1],没有 + 1,导致结果的错误。东哥这个做法更像是工程的做法,将差分数组封装成一个类,然后new 对象进行操作,值得学习。
2023-04-24 11:45:31
874
原创 数组题目总结 -- 前缀和数组
博主本来想让 preSum[0] 来存储 sum 的值,最后发现结果不对,因为 preSum[0] 这个值也要参与到求和的运算当中。eg:求下标 0 ~ 下标 5 之间元素的和,那么就是 preSum[5 + 1] - preSum[0]。博主的那个方法,虽然是前缀数组的衍生,但sumRegion时间复杂度为O(n),而东哥的这个时间复杂度为O(1)。很巧妙,运用迭代的思想构建preMartix数组,又运送矩阵相减的方法,算出sum,东哥牛逼!!!!
2023-04-22 16:10:27
752
原创 数组题目总结 -- 双指针
目录① 快慢指针:一. 删除有序数组中的重复项1. 思路和代码I. 博主的做法:II. 东哥的做法:2. 总结二. 删除排序链表中的重复元素(扩展)1. 思路和代码I. 博主的做法:II. 东哥的做法:2. 总结三. 移除元素1. 思路和代码I. 博主的做法:II. 东哥的做法:2. 总结四. 移动零1. 思路和代码I. 博主的做法:II. 东哥的做法:2. 总结② 左右指针一. 二分查找1. 思路和代码二. 两数之和 II - 输入有序数组1. 思路和代
2023-04-18 16:06:21
1283
1
原创 idea中的sc.nextLine()与sc.nextInt()处理回车换行的问题
Unix 系统里,每行结尾只有“”,即“\n”;Windows系统里面,每行结尾是“”,即“ \r\n”;Mac系统里,每行结尾是“”,即“\r”‘\r’表示回车(carriage return)即回到行首,并没有包含换行的动作;’\n’表示换行(line feed)即移动到新的一行(下一行)nextInt()和next()、nextFloat()、nextDouble()都是只读取有效字符的,不会读取空格键、Tab键和回车键。当它在输入有效字符前碰到这些无效字符时会。
2023-03-27 17:11:32
1639
1
原创 链表题目总结 -- 回文链表
一. 从中心开始找最大的回文字符串1. 思路简述2. 代码3. 总结二. 判断是否为回文字符串1. 思路简述2. 代码3.总结三. 判断是否是回文链表1. 思路简述2. 代码3. 总结4. 优化解法
2023-02-15 21:20:09
833
3
原创 链表题目总结 -- 迭代
时间复杂度:o(n)空间复杂度:o(1),比递归要省空间,递归需要栈。把循环里的步骤分块理解,会好很多。hard类型的题,确实比较绕,不过拆开来看还可以。一定要注意那个区间左闭右开,不管是for循环,还是递归的里面的形参都要注意。
2023-02-14 16:08:28
483
1
原创 链表题目总结 -- 递归
一. 递归反转整个链表1. 思路简述2. 代码3. 总结二. 反转链表前 N 个节点1. 思路简述2. 代码3. 总结三、反转链表的一部分1. 思路简述2. 代码3.总结四、反转链表后N个节点1. 思路简述2. 代码3.总结
2023-02-13 22:34:44
524
原创 链表题目总结 -- 双指针技巧
一. 合并两个有序链表1. 思路简述2. 代码3. 总结二. 分隔链表1. 思路简述2. 代码3. 总结三. 合并K个升序链表1. 思路简述2. 代码3. 总结四. 单链表的倒数第 k 个节点1. 思路简述2. 代码3. 总结五. 链表的中间结点1. 思路简述2. 代码3. 总结六. 环形链表(链表是否有环)1. 思路简述2. 代码3. 总结七. 环形链表 II(如何计算环的起点)1. 思路简述2. 代码3. 总结八. 相交链表(求两个链表相交的起始点
2023-01-12 00:10:10
644
原创 Java中的.length与.length()
一. .length1. .length究竟有多长?2. 为什么会有.length呢?3. 二维数组的创建方法4. 数组是对象二. .length()1. .length()怎么用呢?2. char数组怎么转换为String3. String怎么转换为char数组三. 对比1. 为什么数组不像String,没有自己的类呢?2. 为什么String不能增加一个.length属性呢?
2023-01-06 22:27:35
3132
原创 ‘conda‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件。
第一种情况:环境变量问题第二种情况:Anaconda在windows上就不完整,考虑重装
2022-12-02 16:35:19
951
4
原创 BlueBridge -- BASIC 12 十进制转八进制
一. 问题描述1. 输入格式2. 输出格式3. 样例输入4. 样例输出二. 解题思路三. 代码四. 总结
2022-11-16 21:10:26
298
原创 leetcode118 -- 杨辉三角
一. 问题描述示例 1示例 2提示二. 解决问题主函数:法一:递归1. 解题思路2. 解题代码法二:动态规划1. 解题思路2. 解题代码法三:暴力破解1. 解题思路2. 解题代码
2022-11-16 20:41:18
1037
原创 知识图谱认知智能理论与实战----------第二章 知识图谱模式设计
一. 知识图谱模式二. 模式与本体三. 本体概论I. 模式与本体辨析II.本体的构成要素III.实体分类IV.实体分类四. 六韬法I. 场景II. 复用III. 事物IV. 联系V. 约束VI. 评价
2022-11-15 17:28:56
1846
原创 BlueBridge -- BASIC 10 十进制转十六进制
一定注意边界值,否则不能AC。本题的边界值就是输入为 0的情况,一定得单独考虑。居然连这个计算方法都忘了,后面得把这些进制转换重新整理整理。
2022-11-14 11:48:13
267
原创 BlueBridge -- BASIC-11 十六进制转十进制
方法是会四舍五入的。而本题十六进制转十进制,最后输出的肯定都是整数,所以不用考虑小数问题,这个方法能用。int类型表示的范围是(-2147483648 ~ 2147483647)即(-2^31 ~ (2^31 -1),换成十六进制为:(FFFFFFFF80000000 ~7FFFFFFF)。而本题要求的是8为十六进制,那么也就是说,只要最高位超过7,int类型就表示不了了,那么就考虑改变数据类型。
2022-11-12 15:08:56
499
原创 知识图谱认知智能理论与实战----------第一章 知识图谱概述
一. 什么是知识图谱二. DIKW模型三. 知识图谱技术体系四. 知识图谱辨析I. 知识图谱与自然语言处理II. 知识图谱与图数据库III. 知识图谱与语义网络IV. 知识图谱与搜索引擎
2022-11-08 21:14:11
1730
原创 leetcode141 -- 环形链表
一、问题描述二、解决问题法一:哈希表(HashSet)法二:快慢指针法法三:耍赖法 ---- 节点个数法四:耍赖法 ---- 修改节点值
2022-07-28 11:22:36
263
原创 leetcode136 -- 只出现一次的数字
文章目录一、问题描述二、解决方法法一: 异或法二:暴力破解法三:使用哈希表(HashMap)法三:使用集合(HashSet)法四:和差法(所有不重复数字之和的二倍减去所有数字之和)
2022-07-19 09:53:19
163
转载 unbuntu18.04-----bilibili网页端无法播放视频
一、发现问题想摸个鱼,刷个B站,发现无法播放视频。二、解决问题 安装所有多媒体解码器,使用如下命令: ```powershellsudo apt install ubuntu-restricted-extras``` 由于这个基础软件包包含类似微软字库那样用不到的一些多余的软件,你必须得接受最终用户许可协议(EULA)才行...
2022-07-18 18:48:01
3078
原创 win10安装双系统ubuntu18.04
文章目录一、制作启动盘1. 下载UltraISO2. 下载ubuntu18.04镜像文件3. 打开镜像文件4. 写入硬盘映像二、为ubuntu分配磁盘空间三、安装ubuntu四、想重新进入win10系统五、删除ubuntu双系统1. 删除分区2. 删除启动项六、删除U盘EFI分区...
2022-07-18 18:35:44
751
原创 HTML总结
文章目录一. 什么是HTML二. W3C标准1. World Wide Web Consortium(万维网联盟)----------------- 中立性技术标准机构2. W3C标准包括:三. 网页基本信息1. DOCTYPE:告诉浏览器,我们使用什么规范2. meta:描述性标签:它用来描述网站的一些信息四. 网页基本标签1. img:图片标签2. < h1 >...< /h1 >,h1 - h6:标题标签(1-6:从大到小,一共6个等级)3. < p >...
2022-05-09 22:43:22
1201
原创 java网络编程总结
文章目录一、IP地址1、网页编程:B/S架构(Browser/Server(浏览器/服务器))2、客户端服务器编程:C/S架构(Client/Server(客户端/服务器))3、InetAddress类4、端口5、InetSocketAddress类二、TCP实现聊天三、TCP实现文件上传四、UDP实现客户端向服务器发送信息五、UDP实现客户端与服务器的简单聊天系统六、URL1、URL类2、使用url下载网站上的资源一、IP地址1、网页编程:B/S架构(Browser/Server(浏览器/服务器))
2022-05-07 16:04:56
921
原创 Tomcat运行不出来汤姆猫404异常
一.发现问题今天真的是傻缺,运行Tomcat,半天汤姆猫的页面出不来,但是自己写的页面却可以加载出来,给我气的。30minutes passed,无意间打开了ROOT目录,看到下面这个场景:这拿头加载啊,啥也没有。二.解决问题赶紧去把原来的压缩包重新解压,完了把ROOT目录替换了:不错,完美运行。三.总结tomcat服务器打开的时候,默认访问的是ROOT目录。要想打开自己写的网页,必须要先建目录,eg:https://localhost:8080/Andy/111.html,创建
2022-05-05 11:09:03
2206
原创 java错误: 找不到或无法加载主类 XXX(主函数传递参数 or 命令行传递参数)
文章目录一.发现问题二.问题分析三.主函数传递参数(命令行传递参数)一.发现问题问题如下图:编译文件即Javac完美运行,但执行的时候报错----无法加载主类。代码内容如下:二.问题分析因为执行. class文件时,发现代码中,有package mianshiti这一行代码,而当前的路径在mianshiti里面,所以程序执行到这一行找不到mianshiti这个包,报错。三.主函数传递参数(命令行传递参数)将执行路径回退到src路径下,如下图:在执行.class文件的同时,传入一个字符
2022-04-16 18:29:05
394
原创 leetcode20 -- 有效的括号
一.问题简介实例一:输入:s = “()”输出:true实例二:输入:s = “()[]{}”输出:true实例三:输入:s = “()[]{}”输出:true实例四:输入:s = “()[]{}”输出:true实例五:输入:s = “()[]{}”输出:true二.解题思路法一://java public static boolean inValid(String s){ Stack<Character> sta
2022-03-16 20:59:53
129
原创 leetcode 9 -- 回文数
一.题目简介给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121 是回文,而 123 不是。示例1:输入:x = 121输出:true示例2:输入:x = -121输出:false解释:从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。示例3:输入:x = 10输出:false解释:从右向左读, 为 01 。因此它不是一个回文数
2022-03-14 12:08:09
2192
原创 cmd、PowerShell基本操作总结
文章目录一. 如何快速打开PowerShell1.win + Q(X:\users\用户名\目录(X表示系统盘))2.shift + 右键(在任意文件夹下打开PowerShell)二. 如何快速打开cmd1.win + R(X:\users\用户名\目录(X表示系统盘))2.win + Q (X:\users\用户名\目录(X表示系统盘))3.通过powershell打开(在任意文件夹下打开cmd)4.安装cmder(在任意文件夹下打开cmd)三. 创建文件1.cmd(命令提示符)2.PowerShell四
2022-03-11 18:35:51
4661
原创 leetcode1-- 两数之和
一. 题目给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。二. 示例示例 1:输入:nums = [2,7,11,15], target = 9输出:[0,1]解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。示例 2:输入:nums = [3,2
2022-01-16 21:33:05
164
原创 浅谈简单工厂模式
一.简介简单工厂模式是属于创建型模式,又叫做静态工厂方法(Static Factory Method)模式,但不属于23种GOF设计模式之一。简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。简单工厂模式是工厂模式家族中最简单实用的模式,可以理解为是不同工厂模式的一个特殊实现。下面博主将使用简单工厂模式来制作一个计算器:二.UML图三.代码实现法一(使用抽象类):向上抽象出一些公用的方法,生成Operation抽象类package designPattern_easyFactory_
2021-12-16 21:17:23
125
原创 浅谈if __name__ == ‘__main__‘
一.if _ name _ == 'main’的理解__name__是魔法函数的一种,如果大家想详细了解和魔法函数相关的知识点击这里,里面整理了Python中常见的魔法函数用法,都有详细的代码解析:https://zhuanlan.zhihu.com/p/344951719与Java、C、C++等几种语言不同的是,Python是一种解释型脚本语言,在执行之前不同要将所有代码先编译成中间代码,Python程序运行时是从模块顶行开始,逐行进行翻译执行,所以,最顶层(没有被缩进)的代码都会被执行,所以Pyth
2021-12-15 17:14:57
1521
原创 知识图谱概念与技术读书笔记----第二章基础知识
一. 知识表示1.基本概念I.评价知识的两个重要因素:表达能力、计算效率。符号表示:eg:通常用“柏拉图”指代柏拉图,用关联图表示关系,用“=>”表示两个命题之间蕴含的关系。数值表示:用标量、向量、该旅分布等数值表示事实与知识。eg:人的身高可以表达为标量“1.5m”。II.知识图谱的图表示如果节点u与v邻接,那么u是v的邻居。节点u的所有邻居集合记作N(u),也就是u的邻居数目,被称作u的度数。...
2021-10-10 16:44:51
240
原创 python两个列表元素交换位置
一、发现问题今天研究python引用传递,发现了这么个例子:def swap(dw): # 下面代码实现dw的a、b两个元素的值交换 dw['a'], dw['b'] = dw['b'], dw['a'] print("swap函数里,a元素的值是",dw['a'], ";b元素的值是", dw['b'])dw = {'a': 6, 'b': 9}swap(dw)print("交换结束后,a元素的值是", dw['a'], ";b元素的值是", dw['b'])
2021-10-09 14:57:42
4246
longines.zip
2020-03-19
算法4这本书里,提到的两个命题(命题P和命题Q)理解不了
2023-01-07
TA创建的收藏夹 TA关注的收藏夹
TA关注的人