算法leetcode day 31
读算法霸权笔记13_读后总结与感想兼导读
1. 基本信息 算法霸权:数学杀伤性武器的威胁 [美] 凯西·奥尼尔(Cathy 著 中信出版社,2018年9月出版 1.1. 读薄率 书籍总字数220千字,笔记总字数32359字。 读薄率32359÷220000≈14.71% 1.2. 读厚方向 算法的力量:人类如何共同生存? 极简算法史:从数学 ......
【算法】【线性表】【链表】反转链表
1 题目 给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。 示例 1: 输入:head = [1,2,3,4,5] 输出:[5,4,3,2,1] 示例 2: 示例 3: 输入:head = [] 输出:[] 提示: 链表中节点的数目范围是 [0, 5000] -5000 <= No ......
[LeetCode] 2696. Minimum String Length After Removing Substrings
You are given a string s consisting only of uppercase English letters. You can apply some operations to this string where, in one operation, you can r ......
(坚持每天都写算法)算法复习与学习part1基础算法1-5
今天是写题,数的的三次方根。 使用二分法,浮点数不能位运算直接/2即可。 //这道题很难想到二分,二分查找是查找,就是找哪个地方有目标数 //一般是用在区间上的, //总结:二分要求是有查找条件且是查找,符合这两个条件就可以考虑 //不过这里可以把从0到n的浮点数当成一个区间,看数值范围的话,n的话 ......
(坚持每天都写算法)算法基础复习part1基础算法1-4——二分
二分使用的前提是有序性的条件如果要找以下情况: 1.找大于等于数的第一个位置 2.找小于等于数的第一个位置 二分使用的前提是无序性的条件下如果要找以下情况: 1.找最大值 2.找最小值 二分法一般有边界问题,如果是有序性的条件下的话只要记住一句话:有加必有减。 这里是示例代码: int mid = ......
代码随想录 day13 滑动窗口最大值 前 K 个高频元素
滑动窗口最大值 这题第一次见 比较难找到思路 滑动窗口的移动比较类似于队列的行为 但是我们需要找到其中的最大值 在线性时间复杂度下 只能维护这个队列保持单调性 但是我们没有这样的一个可以在移动中保持单调的数据结构 只能自己手动创建 我们利用deque进行队列的创建 这个队列有三个基本函数 pop 用 ......
Day46 回顾方法(方法的定义与调用)
回顾方法 方法的定义 修饰符 返回类型 break:跳出switch,结束循环 和 return:结束方法,返回一个结果(空或其他) 的区别 方法名 :注意规范就OK 见名知意 参数列表:(参数类型, 参数名)... 异常抛出(还未学 后面讲解) 方法的调用 静态方法 非静态方法 形参和实参 值传递 ......
文心一言 VS 讯飞星火 VS chatgpt (175)-- 算法导论13.3 4题
四、用go语言,Teach 教授担心 RB-INSERT-FIXUP可能将 T.nil.color 设为 RED,这时,当 z 为根时第1行的测试就不会让循环终止。通过讨论 RB-INSERT-FIXUP永远不会将 T.nil.color 设置为 RED,来说明这位教授的担心是没有必要的。 文心一言 ......
C语言---Day5
13、作用域规则 C 语言中有三个地方可以声明变量:在函数或块内部的局部变量; 在所有函数外部的全局变量; 在形式参数的函数参数定义中 局部变量:在某个函数或块的内部声明的变量称为局部变量,它们只能被该函数或该代码块内部的语句使用,局部变量在函数外部是不可知的 int main () { /* 局部 ......
MCM_算法篇
from pixiv Cellular Automata 参考文章: 元胞自动机的实现与应用 这篇文章将CA的实现给出,具体实现细节可以看: Python 实现基于元胞自动机的生命游戏 澳洲变燠洲,考拉成烤拉!澳大利亚山火为什么难以控制? ......
day13 代码随想录算法训练营 347. 前 K 个高频元素 【待梳理】
题目:347. 前 K 个高频元素 我的感悟: 我用hash再排序。 卡尔用的小顶堆。 `heapq`是Python中的一个模块,它提供了堆队列(也称优先队列或者堆)的算法实现。在计算机科学中,堆是一种特殊的完全二叉树数据结构,其中每个父节点的值都小于或等于其子节点的值(在最小堆中)或者父节点的值都 ......
LeetCode 872
Leaf-Similar Trees Leaf-Similar Trees - LeetCode Thinkings 二叉树无论先中后序遍历,所得叶子节点次序不变. Codes 我采用了非递归的中序遍历方式: /** * Definition for a binary tree node. * st ......
day13 代码随想录算法训练营 239. 滑动窗口最大值
题目:239. 滑动窗口最大值 我的感悟: 来难度了,有点意思, 理解难点: 需要实现自定义队列, 看了国外的解题思路和其他的回答,感觉还是卡尔的思路,更有意思。 实现队列: pop只弹出左边边界且左边界为最大值的时候 push 要维护队列里的大到小的单调性。把队尾小的都卷走 front查询最大值 ......
vue入门——??04days
def接口项目_回顾 # 创建数据库指定编码 CREATE DATABASE drf_ks CHARACTER SET utf8; # 锁定用户后,之前签发的token,如果没过期,还能用 -自己写认证类 》拿到当前用户后,判断是否锁定,如果锁定了,认证不通过即可 # 用自定义用户表--》签发tok ......
Day02
计算机底层教学 语言 ![](C:\Users\26329\Pictures\Screenshots\屏幕截图 2024-01-08 154140.png) 进制 学习进制的障碍 人类天然地选择10进制 进制的运算 运算的本质是查数 每种进制都有对应的运算体系 二进制 十六进制就是二进制的简写 数据 ......
算法期末复习笔记
分治 基本概念 基本思想 将原始问题分解为若干子问题 逐个解决各个子问题 得到原始问题的解 情况分类 原始问题的解在分解出的子问题中 原始问题的解需要各个子问题的解再经过综合处理得到 如果分解出的子问题和原始问题类型相同,就可以用递归的方法做了 算法示例 查找最大值最小值 O(logn) 二分搜索 ......
KMP 算法
Question: Given two strings needle and haystack, return the index of the first occurrence of needle in haystack, or -1 if needle is not part of haysta ......
计算器算法
目录思路最简单的计算器(好像也不简单,因为有*/)224772 困难计算器 可以通解224 227 和上面的题 先把力扣上5道计算器的题目干了,主要使用双栈法 思路 用一个栈ops存操作,用一个栈nums存数字 然后从前往后做,对遍历到的字符做分情况讨论: 空格 : 跳过 ( : 直接加入 ops ......
即时通讯技术文集(第31期):IM开发综合技术合集(Part4) [共13篇]
为了更好地分类阅读 52im.net 总计1000多篇精编文章,我将在每周三推送新的一期技术文集,本次是第31 期。 [- 1 -] IM消息ID技术专题(一):微信的海量IM聊天消息序列号生成实践(算法原理篇) [链接] http://www.52im.net/thread-1998-1-1.h ......
mysql底层join算法
暴力 Nested-Loop Join 走索引的 index-Nested-Loop Join 缓冲块的 blocked-Nested-Loop Join mysql join 底层实现_mysql join实现算法-CSDN博客 走index loop join ,说明如果联表走主键,就算条件不走 ......
leetcode 5.最长回文子串
leetcode 5.最长回文子串 第五题:最长回文子串 1.中心拓展: 我们枚举所有的「回文中心」并尝试「扩展」,直到无法扩展为止,此时的回文串长度即为此「回文中心」下的最长回文串长度。我们对所有的长度求出最大值,即可得到最终的答案。拓展分为两种情况,奇数长度和偶数长度,分别拓展一次取较大值,同时 ......
【算法】【线性表】【链表】链表求和
1 题目 给定两个用链表表示的整数,每个节点包含一个数位。 这些数位是反向存放的,也就是个位排在链表首部。 编写函数对这两个整数求和,并用链表形式返回结果。 示例: 输入:(7 -> 1 -> 6) + (5 -> 9 -> 2),即617 + 295 输出:2 -> 1 -> 9,即912 进阶: ......
代码随想录 day14 二叉树的递归遍历 迭代遍历(栈) 统一遍历(栈)
二叉树的节点的孩子数量称之为度 所有节点度为0或2的二叉树是满二叉树 完全二叉树是所有非叶节点都是度为2的节点 叶子都尽可能的靠左 前序遍历:中左右 中序遍历:左中右 后续遍历:左右中 这里左右中指的是当前节点的遍历顺序 中就是先遍历当前节点 再遍历子树 前序遍历递归代码: 中序遍历递归代码: 后序 ......
Vue_入门——???03_days
上节回顾: 前端发展 -vue,react -uni-app 》多处编译 # 1 vue 介绍 -读 view ,渐进式框架 -版本:2.x 3.x 3完全兼容2的写法 -组合式api -配置项api:目前学的 new Vue({ el:'#app', data:{}, methods:{} }) ......
代码随想录算法训练营第二十七天 | 39. 组合总和,40.组合总和II,131.分割回文串
一、39. 组合总和 题目链接: LeetCode 39. 组合总和 学习前: 思路: 无 学习后: 思路: 需要额外定义的成员变量: private List<List<Integer>> res; private List<Integer> list; 调用函数: List<List<Integ ......
Day45 什么是面向对象
什么是面向对象 面向过程&面向对象 面向过程思想. 步骤清晰简单,第一步做什么,第二步做什么.... 面对过程适合处理一些较为简单的问题 面向对象思想 物以类聚,分类的思维模式,思考问题首先会解决问题需要哪些分类,然后对这些分类进行单独思考。最后,才对某个分类下的细节进行面向过程的思索。 面向对象适 ......
ClickHouse的JOIN算法选择逻辑以及auto选项
Setting配置join_algorithm用于指定JOIN算法,它可以设置为多个值,例如join_algorithm='direct,hash,partial_merge'。在选择最终JOIN算法的时候是根据setting配置join_algorithm, 以及JOIN操作的Strictness... ......
【算法】【线性表】【数组】只出现一次的数字 II
1 题目 给你一个整数数组 nums ,除某个元素仅出现 一次 外,其余每个元素都恰出现 三次 。请你找出并返回那个只出现了一次的元素。 你必须设计并实现线性时间复杂度的算法且使用常数级空间来解决此问题。 示例 1: 输入:nums = [2,2,3,2] 输出:3 示例 2: 输入:nums = ......
(坚持每天都写算法)算法基础复习part1基础算法1-3
发现了一个不太好的习惯,我写东西不喜欢Tab一下,导致行与行之间有点难区分。 题目: 思路:这道题其实考的就是归并,2可以和3比,也可以和6比,也就是说2是可以被使用多次的。之所以使用归并,是因为单个的2以及单个的3也就是单个的数字可以看成是一个数组(关于这个想法,集合也是通用的),那么就要给数组进 ......