几何 算法

有效的括号--LeetCode算法

不用map的解法 public boolean isValid(String s) { //输入的字符串为空,直接返回true if(s.isEmpty()) return true; //新建一个栈 Stack<Character> stack=new Stack<Character>(); // ......
括号 算法 LeetCode

代码随想录算法训练营第一天| 704. 二分查找、27. 移除元素

704 二分查找 题目 给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。 第一想法 判断条件是 value = target 因为数组是升序,其实每种查找方法应该相差不大? 不过 ......
随想录 训练营 随想 算法 元素

manacher(马拉车)算法C++详解

#马拉车的定义 马拉车本质是对**中心扩展法**(暴力算法)的优化。 #马拉车是干什么的 Manacher算法帮助我们**在给定的字符串中找到最长的回文子串**。 为了简单起见,我们先只处理有奇数个字符的字符串,关于偶数个字符的字符串,在文章最后会给出解法。我们的处理思路和暴力算法基本一致,那就是从 ......
算法 manacher

单源次短路算法 学习笔记

**次短路**:顾名思义就是一张图中**第二短**的路径。 **分类**:1. 边**不可重复经过**的次短路问题。边**可重复经过**的次短路问题。 2. **严格**次短路(次短路长度**必须大于**最短路长度)。**非严格**次短路(次短路长度**可以大于或等于**最短路长度)。 # 一 、边 ......
算法 笔记

关于读者阅读“改良版雪花算法”后提出的几个共性问题的回复

你好呀,我是歪歪。 周一的时候不是发了《在开源项目中看到一个改良版的雪花算法,现在它是你的了。》这篇破文章嘛。 然后有好几个读者都提出了几个类似的问题,再写个续集,给大家解答一下。 我就喜欢这种和读者有来有回,相互拉扯的感觉。 突出一个“相互学习,共同进步。” 超前消费 首先大家都在纠结的一个点是, ......
共性 算法 雪花 读者 问题

C++系列二:STL教程-常用算法

 [TOC](常用算法) # 前言 还有一些我在尝试中迷惑不解的,有点玄幻。 # 算法列举: 1. 排序算法: ```cpp sort(first, last); stable_sort(first, last); partial_sort(first, middle, last); partia ......
算法 常用 教程 STL

智能投放算法笔记(S/X-Learner & Uplift tree)

[toc] ## 1 S/X-Learner ### 1.1 S/X-Learner算法概述 S/X-Learner是一种基于强化学习的算法,用于在线广告的智能自动投放。其包含两个组成部分: - S-Learner: 评估每个广告的预期点击率(CTR) - X-Learner: 评估每个广告的真实商 ......
算法 X-Learner Learner 智能 笔记

决策树算法

## 决策树算法核心是要解决两个的关键问题 1、如何从数据表中照出最佳节点和最佳分支 2、如何让决策树停止生长防止过拟合 > 就是说假如我有一张数据表,数据表中有成千上万个特征,我要把他们都提问完吗? ## sklearn中的决策树模型 ![6.png](https://img1.imgtp.com ......
算法

代码随想录算法训练营第十天|力扣232.用栈实现队列、力扣225.用队列实现栈

# 栈与队列 ## 理论知识 栈提供push 和 pop 等等接口,所有元素必须符合先进后出规则,所以栈不提供走访功能,也不提供迭代器(iterator)。 不像是set 或者map 提供迭代器iterator来遍历所有元素。 **栈是以底层容器完成其所有的工作,对外提供统一的接口,底层容器是可插拔 ......
队列 随想录 训练营 随想 算法

代码随想录算法训练营第十四天| 理论基础 递归遍历 迭代遍历

理论基础 卡哥建议:需要了解 二叉树的种类,存储方式,遍历方式 以及二叉树的定义 文章讲解:https://programmercarl.com/%E4%BA%8C%E5%8F%89%E6%A0%91%E7%90%86%E8%AE%BA%E5%9F%BA%E7%A1%80.html 补充的知识点: ......
随想录 训练营 随想 算法 理论

单源最短路径算法

# 单源最短路径算法 ## 1. 原理 单源最短路径算法是一种用于在有向图或无向图中找到从指定源节点到其他所有节点的最短路径的算法。常用的单源最短路径算法有Dijkstra算法、Floyd-Warshall算法和Bellman-Ford算法。 ## 2. Dijkstra算法 Dijkstra算法是 ......
算法

(未完全掌握)代码随想录算法训练营第八、九天|KMP算法;力扣28.实现strStr(),力扣459.重复的子字符串

## KMP算法(没掌握) - 主要功能:字符串匹配 - 理论:检测文本串中是否出现过模式串 - 前缀就是包含首字母不包含尾字母的所有子串 - 后缀就是包含尾字母不包含首字母的所有子串 - 最长相等前后缀:对子串分别分析,从左向右 - **前缀表是用来回退的,它记录了模式串与主串(文本串)不匹配的时 ......
算法 随想录 训练营 九天 字符串

Floyd 算法

# Floyd 算法:动态规划中的最短路径问题 ## 一、简介 Floyd 算法是一种用于求解图中所有顶点对之间最短路径的动态规划算法。它是由 Robert W. Floyd 在 1965 年提出的,因此得名 Floyd-Warshall 算法。该算法的核心思想是使用动态规划来避免重复计算已经计算过 ......
算法 Floyd

MATLAB用改进K-Means(K-均值)聚类算法数据挖掘高校学生的期末考试成绩|附代码数据

全文链接:http://tecdat.cn/?p=30832 最近我们被客户要求撰写关于K-Means(K-均值)聚类算法的研究报告,包括一些图形和统计输出。 本文首先阐明了聚类算法的基本概念,介绍了几种比较典型的聚类算法,然后重点阐述了K-均值算法的基本思想,对K-均值算法的优缺点做了分析,回顾了 ......
均值 数据 数据挖掘 算法 成绩

LeetCode从算法到算命—1749.任意子数组和的绝对值的最大值

# 1749.任意子数组和的绝对值的最大值 ## 题目信息 给你一个整数数组 `nums` 。一个子数组 `[numsl, numsl+1, ..., numsr-1, numsr]` 的 **和的绝对值** 为 `abs(numsl + numsl+1 + ... + numsr-1 + nums ......
绝对值 最大值 数组 算法 LeetCode

最短路算法大全(Bellman-Ford &Spfa)

# Bellman-Ford算法 1、基于松弛操作的***单源最短路算法***,针对于有向图、 2、e[u]存u点的出边的邻点和边权,d[u]存u点到原点的距离 3、初始化,d[s] = 0,d[其他点]=INF (源点到本身的距离初始化为0到其他点的距离都初始化为无穷) 4、执行多轮操作。每轮操作 ......
Bellman-Ford 算法 Bellman 大全 Ford

非对称加密算法

非对称加密算法是一种使用公钥和私钥配对的加密算法,也称为公钥加密算法.常见的非对称加密算法包括 RSA、DSA 等,它们遵循 公钥分发、私钥保密规则,也就是说公钥是公开的,可以自由分发给其他人.而私钥是保密的,只有私钥的持有者知道.这样可以确保加密和签名的安全性,因为即使公钥被泄露,也无法对数据进行 ......
算法

文心一言 VS 讯飞星火 VS chatgpt (73)-- 算法导论7.1 4题

# 四、如何修改 QUICKSORT,使得它能够以非递增序进行排序? ## 文心一言: 快速排序(Quicksort)是一种常用的排序算法,基于分治策略进行设计。默认情况下,快速排序会以递增序进行排序。若想修改快速排序以实现非递增排序,我们需要调整比较和交换的逻辑。 以下是修改后的非递增快速排序的 ......
文心 导论 算法 chatgpt VS

堆优化模拟退火(List-Based Simulated Annealing|List-Based SA|LBSA|模拟退火) 算法

# 堆优化模拟退火(List-Based Simulated Annealing) 算法 ## 引入 堆优化模拟退火(List-Based Simulated Annealing,简称 LBSA) 是一种对 [模拟退火](https://oi-wiki.org/misc/simulated-anne ......
List-Based Based List 算法 Annealing

算法

原码、反码、补码 1.正数 原码 = 反码 = 补码 2.负数 反码 = 原码符号位,外按位取反 补码 = 反码 + 1 3. 计算机存储的是补码,解决了原码中 0 有 0000-0000 和 1000-0000 的问题 ......
算法

算法刷题过程中有关包装类和基本类型的注意事项

包装类型和基本数据类型 int <->Integer Integer a = Integer.valueOf(10); int b = a.intValue(); "123" -> 123 int val = Integer.parseInt("123"); Array转化为List List<In ......
算法 注意事项 事项 过程 类型

TimeId 基于时间戳的自增ID算法(Java版)

## 常用的全局唯一ID算法 ### 1、UUID 首先是大名鼎鼎的 UUID,UUID 是通用唯一识别码(Universally Unique Identifier)的缩写。 UUID是一个128比特的数值,是基于当前时间、计数器(counter)和硬件标识(通常为无线网卡的MAC地址)等数据计算 ......
算法 时间 TimeId Java

计算几何入门

# 计算几何入门 [toc] ## 一 向量 我认为唯一比较有用的东西是向量的叉积 ### 1.叉积 #### a.定义 对于两个0起点开始,最终点为(a1,a2)和(b1,b2)的两个向量,其叉积为a1 * b2 - a2 * b1。 #### b.应用 可以判断两个向量的旋转方向: 假如A和B的 ......
几何

重重重重重学 KM 算法

KM 算法用于求解二分图最大权完美匹配问题。 Q:如果没有完美匹配,只求最大权怎么办? A:把剩下的边设为 $0$。 利用线性规划的结论,二分图最大权完美匹配可以转化为最小顶标和问题。也即求出最小的 $\sum a_i+b_i$,使得 $a_i+b_j\geq g_{i,j}$。 结论:最小的 $a ......
算法 KM

递归算法练习-猴子吃桃问题

猴子吃桃 猴子吃桃子问题:有一堆桃子,猴子第一天吃了其中的一半,并再多吃了一个! 以后每天猴子都吃其中的一半,然后再多吃一个。当到第 10 天时, 想再吃时(即还没吃),发现只有 1 个桃子了。问题:最初共多少个桃子? 思路分析 逆推 1. day = 10 时 有 1 个桃子 2. day = 9 ......
算法 猴子 问题

美国空军未来利用AI控制无人僚机执行空战或对地作战任务成为可能——AI算法强化学习控制无人机执行空战或对地作战成为可能

来源: https://export.shobserver.com/baijiahao/html/640202.html https://baijiahao.baidu.com/s?id=1773463574030646069&wfr=spider&for=pc 作战无人机从有人远程控制进步到AI控 ......
僚机 无人机 空军 算法 任务

Max_QAQ 计算几何

[TOC] ## 二维计算几何基础 ### 点、向量、直线 点:$(x,y)$ . 向量:$(x,y)$ . 向量的运算($A=(a_1,a_2),\ B=(b_1,b_2)$): - 加减:$A\pm B=(a_1\pm b_1,a_2\pm b_2)$ - 数乘:$k\cdot A=(k\cdo ......
几何 Max_QAQ Max QAQ

排序算法-C++

总结很好的帖子常用排序算法总结(C++) - 知乎 (zhihu.com) 关于归并为什么是nlogn? 想象一个递归树,递归树的高度是logn,每一层的合并是n 对于快排,平均效果是nlogn,但如果每次左右划分只能减少一个元素,会变成n^2 ......
算法

nlp入门(三)基于贝叶斯算法的拼写错误检测器

源码请到:自然语言处理练习: 学习自然语言处理时候写的一些代码 (gitee.com) 数据来源:norvig.com/big.txt 贝叶斯原理可看这里:机器学习算法学习笔记 - 过客匆匆,沉沉浮浮 - 博客园 (cnblogs.com) 一、数据预处理 将输入的数据全部变为小写方便后续处理 de ......
检测器 算法 错误 nlp