算法10.23 10 23

2023_10_15_DAY_01_JAVA_SE_Java基础知识_中_变量与运算符

2023_10_15_DAY_01_JAVA_SE_Java基础知识_中_变量与运算符 标识符、关键字和保留字 标识符 在Java语言中,通过标识符来表示一些元素的名字,比如变量名、类名、方法名和包名等。Java中的标识符要符合下面的规则: 标识符必须以字母、下划线(_)、数字或美元($)组成; 标 ......

Snowflake算法生成分布式ID实现Go、C++

Snowflake 算法是一种用于生成全局唯一 ID 的分布式算法。它在分布式系统中被广泛应用,用于解决多节点同时生成 ID 的冲突问题。 Snowflake 算法的核心思想是将一个64位的长整数(Long)分解成多个部分,每个部分代表不同的信息,例如时间戳、节点ID和序列号。通过这种方式,Snow ......
分布式 算法 Snowflake

2023_10_15_DAY_01_JAVA_SE_Java基础知识_上

2023_10_15_DAY_01_JAVA_SE_Java基础知识 什么是Java 计算机语言是人与计算机之间的通讯语言,分为机器语言、汇编语言、高级语言。Java是一种高级计算机语言,它是由Sun公司(已被Oracle公司收购)于1995年5月推出。 Java语言平台 Java语言平台包括3个版 ......
JAVA_SE_Java 基础知识 基础 知识 2023

22_STL之算法

STL之算法 函数对象 重载函数调用操作符的类,其对象常称为函数对象(function object) ,即它们是行为类似函数的对象,也叫仿函数(functor),其实就是重载"()"操作符,使得类对象可以像函数那样调用。 注意: ​ 1.函数对象(仿函数)是一个类,不是一个函数。 ​ 2.函数对象 ......
算法 STL 22

记Halo1.5版本迁移Halo2.10.0版本

原文地址: 记Halo1.5版本迁移Halo2.10.0版本 - Stars-One的杂货小窝 上一篇Window10安装linux子系统及子系统安装1Panel面板 - Stars-One的杂货小窝将对应的环境都准备好了,这下我们可以通过1Panel进行halo的2.10版本安装,来测试新版本升级 ......
版本 Halo Halo1 Halo2 10.0

算法第2章实践报告1

7-1 Cable master (切割绳子) 有N条绳子,它们的长度分别为x。如果从它们中切割出K条长度相同的绳子,这K条绳子每条最长能有多长? 输入格式: 第一行两个整数n和k(1<=n<=10000; 1<=k<=10000)。 接下来n行,描述了每条绳子的长度x,x也是整数。 输出格式: 切 ......
算法 报告

《算法学习专栏》—— DP问题之状态机模型

2023年10月13日 更新于2023年10月13日 一、前言 本栏,为状态机模型,题目主要来源日常,目前主要来源于Acwing的提高课。希望以后做到状态机的题目,也能加进来,不断完善。使用的分析方法均为闫式DP分析法。字臭。。。希望能用手写板慢慢写的好看。 二、状态机模型 2.1 对于状态机的考虑 ......
算法 模型 状态 专栏 问题

代码随想录算法训练营-动态规划-3-(0-1背包问题)|416. 分割等和子集、1049. 最后一块石头的重量 II

416. 分割等和子集 01背包的递推公式为:dp[j] = max(dp[j], dp[j - weight[i]] + value[i]); 如果dp[j] == j 说明,集合中的子集总和正好可以凑成总和j,理解这一点很重要。 1 class Solution: 2 def canPartit ......
随想录 子集 训练营 随想 算法

RaftPaper:寻一个可被理解的共识算法

周末躺不平,摆不烂,卷不动,随便读一篇paper吧 原文:In Search of an Understandable Consensus Algorithm 作者:Diego Ongaro / John Ousterhout —— Stanford University 摘要 Raft是一个用于管 ......
共识 算法 RaftPaper

10.15算法

最小栈设计一个支持 push ,pop ,top 操作,并能在常数时间内检索到最小元素的栈。 实现 MinStack 类: MinStack() 初始化堆栈对象。void push(int val) 将元素val推入堆栈。void pop() 删除堆栈顶部的元素。int top() 获取堆栈顶部的元 ......
算法 10.15 10 15

2023-10-14-周六

起得比较晚,,,差不多是9:00吧 然后洗漱什么的....就去实验室了 去实验室后,,,学习不怎么带劲,,,感觉精神比较萎靡 犯困,,没干劲,,,然后就躺下睡觉了 差不多12:30起床,,,然后去食堂吃饭,,,,,然后回寝室继续睡觉 本来打算14:00起床的,,,,然后14:30才起床 于是就去实验 ......
2023 10 14

一个vuepress配置问题,引发的js递归算法思考

前言 这两天在尝试用语雀+ vuepress + github 搭建个人博客。 小破站地址 :王天的 web 进阶之路 语雀作为编辑器,发布文档推送 github,再自动打包部署,大概流程如下。 问题 我使用的elog插件批量导出语雀文档。elog采用的配置是所有文章平铺导出,没有按照语雀知识库目录 ......
算法 vuepress 问题

一.排序算法---并归排序

一.并归排序(自定义实现) merge 函数:这个函数用于将两个已排序的子数组合并为一个更大的已排序数组。它包括创建临时数组 L 和 R 来存储左半部分和右半部分的元素,然后比较这些元素并将它们按升序合并到原始数组 arr 中。 mergeSort 函数:这个函数是归并排序的主要函数。它采用递归的方 ......
算法

忘记Windows 10 登录密码

Win10 Win 10不记得开机密码 这个(https://zhidao.baidu.com/question/376236858295220644.html)介绍了两种方法。先可以试一下第一种方法。第一种方法的思路是添加一个管理员级别的账号,用这个新的账号修改以前系统的账号。第二种方法的思路是用 ......
密码 Windows 10

安装 windows 10 无法安装到这个磁盘 启用了磁盘的控制器

解决办法: 重启机器进入BIOS,还原BIOS默认设置。 具体操作:开机,按del进入BIOS,选择Exit下Load Setup Defaults,回车,Yes,F10保存退出 将【Boot-Mode】修改为UEFI https://blog.csdn.net/u011389297/article ......
磁盘 控制器 windows 10

JAVA大文件(10G以上)的上传下载实现技术

在现代互联网应用中,经常需要上传和下载大文件,如视频、音频、数据库备份等等。对于Java开发者来说,处理大文件上传下载是一个非常常见的需求。然而,由于Java内存限制和网络传输速度的限制,处理大文件上传下载需要一些特殊的技术。本文将介绍一种基于流的方式来实现Java大文件的上传和下载,并提供相应的代 ......
上传下载 文件 技术 JAVA 10G

【算法题】多数元素

🔗题目链接 ✈题目描述: 给定一个大小为 n 的数组 nums ,返回其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。 你可以假设数组是非空的,并且给定的数组总是存在多数元素。 ⌊ n/2 ⌋表示n/2结果向下取整。 🚆数据范围: n == nums.length 1 ......
算法 元素

【算法题】轮转数组

🔗题目链接 🎇题目描述: 给定一个整数数组 nums,将数组中的元素向右轮转 k 个位置,其中 k 是非负数。 🎇数据范围: 1 <= nums.length <= \(10^5\) \(-2^{31}\) <= nums[i] <= \(2^{31}\) - 1 0 <= k <= \(10 ......
数组 算法

【算法题】跳跃游戏

题目链接 给你一个非负整数数组 nums ,你最初位于数组的 第一个下标 。数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最后一个下标,如果可以,返回 true ;否则,返回 false 。 1 <= nums.length <= \(10^4\) 0 <= nums[i] ......
算法

【算法】归并排序

归并排序的基本思想是什么? 归并排序采用分治法(Divide and Conquer),将待排序的数组分成若干个子数组再对子数组进行排序,最后将已排序的子数组合并成一个大的有序数组。 下面是归并排序的基本步骤: 分解-Divider:将待排序的数组按照中间位置分成两个子数组,再将每个子数组按照相同的 ......
算法

【算法题】257

257. 二叉树的所有路径 给你一个二叉树的根节点 root ,按 任意顺序 ,返回所有从根节点到叶子节点的路径。 叶子节点 是指没有子节点的节点。 树中节点的数目在范围 [1, 100] 内 -100 <= Node.val <= 100 这是一道常规 DFS 题, /** * Definitio ......
算法 257

【算法题】跳跃游戏Ⅱ

题目链接 给定一个长度为 n 的 0 索引整数数组 nums。初始位置为 nums[0]。 每个元素 nums[i] 表示从索引 i 向前跳转的最大长度。换句话说,如果你在 nums[i] 处,你可以跳转到任意 nums[i + j] 处: 0 <= j <= nums[i] i + j < n 返 ......
算法

【算法题】移除元素

题目来源 给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。 不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。 元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。 0 <= nums.leng ......
算法 元素

【算法题】合并两个有序数组

💎题目来源 💎题目描述: 给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 nums1 和 nums2 中的元素数目。 请你 合并 nums2 到 nums1 中,使合并后的数组同样按 非递减顺序 排列。 注意:最终,合并后数组不应由函数返 ......
数组 算法 两个

【算法题】买卖股票的最佳时机

题目链接 给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。 你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。 返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润, ......
算法 时机 股票

【算法】质数的判断与筛法

质数定义 不能被 \(2,3,...,n-1\) 整除的自然数 \(n\) 称之为素数,或质数。 判断单个质数 isPrime 那是不是一定要判断从 2 到 n-1 每个数能否整除 n 呢? 答案是不需要。 如果 k 整除 n,那么 n/k 也整除 n,它两位于 \(\sqrt n\) 两侧,判断了 ......
质数 算法

【算法题】买卖股票的最佳时机Ⅱ

题目链接 给你一个整数数组 prices ,其中 prices[i] 表示某支股票第 i 天的价格。 在每一天,你可以决定是否购买和/或出售股票。你在任何时候 最多 只能持有 一股 股票。你也可以先购买,然后在 同一天 出售。 返回 你能获得的 最大 利润 。 1 <= prices.length ......
算法 时机 股票

【算法题】删除有序数组中的重复项

题目链接 思路1:使用set。 /** * @param {number[]} nums * @return {number} */ var removeDuplicates = function(nums) { const uniqueSet=new Set(); for(let i=0;i<nu ......
数组 算法

【算法题】删除有序数组中的重复项Ⅱ

题目来源。 给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使得出现次数超过两次的元素只出现两次 ,返回删除后数组的新长度。 不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。 思路1:移动元素法。从后遍历数组,计数元素重复次数,当遇到不重 ......
数组 算法

【算法题】1163.按字典序排在最后的子串

题目链接 给你一个字符串 s ,找出它的所有子串并按字典序排列,返回排在最后的那个子串。 1 <= s.length <= 4 * \(10^5\) s仅含有小写英文字符。 最关键的是处理时间复杂度,怎么让他小于\(O(n^2)\)。 双指针法: /** * @param {string} s * ......
算法 字典 1163