- 游戏排名算法:Elo、Glicko、TrueSkill
EloratingsystemElo等级分制度(英语:Eloratingsystem)是指由匈牙利裔美国物理学家ArpadElo创建的一个衡量各类对弈活动水平的评价方法,是当今对弈水平评估公认的权威标准。两个选手(player)在排名系统的不同,可以用来预测比赛结果。两个具有相同排名(rating)的选手相互竞争时,不管哪......
- 代码随想录算法训练营第11天 | 栈与队列 20.有效的括号 1047.删除字符串中的所有相邻
leetcode20.有效的括号题目20.有效的括号给定一个只包括'(',')','{','}','[',']'的字符串s,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。每个右括号都有一个对应的相同类型的左括号。解题思路实现代码leetcod......
- 寻根KMP算法
本人被\(KMP\)已经折磨许久。五战KMP。方知之前理解确实浅。故写此篇。这是之前那篇,实在是太浅,不过对代码做了注释。https://www.acwing.com/solution/content/131255/本篇重点说明\(KMP\)的原理,而非过程。过程相信其他博客已经写的十分完善了。\(KMP\)算法(\(Knuth-Morris-......
- 常见的排序算法
常见的排序算法目录一、冒泡排序(BubbleSort)二、插入排序(InsertSort)三、选择排序(SelectionSort)四、希尔排序(ShellSort)五、快速排序(QuickSort)六、堆排序(HeapSort)七、归并排序(MergeSort)八、计数排序(CountSort()九、桶排序(BucketSort)十、基数排序(RadixSor......
- 算法随笔——主席树(可持久化线段树)
介绍主席树即可持久化线段树,由hjt大佬发明。好像又称函数式线段树。可以查询序列在任意时间的历史状态。学习链接学习链接主要思路维护历史状态,若采用直接拷贝整棵树的方式,空间爆炸。可以发现每次修改只有部分节点发生了改变(其实就是到树根那条链会改变),因此每次只需要记......
- leetcod算法热题--移动零
题目给定一个数组nums,编写一个函数将所有0移动到数组的末尾,同时保持非零元素的相对顺序。请注意,必须在不复制数组的情况下原地对数组进行操作。示例1:输入:nums=[0,1,0,3,12]输出:[1,3,12,0,0]示例2:输入:nums=[0]输出:[0]提示:1<=nums.length<=......
- leetcode算法热题--最长连续序列
题目给定一个未排序的整数数组nums,找出数字连续的最长序列(不要求序列元素在原数组中连续)的长度。请你设计并实现时间复杂度为O(n)的算法解决此问题。示例1:输入:nums=[100,4,200,1,3,2]输出:4解释:最长数字连续序列是[1,2,3,4]。它的长度为4。示例2:输入:nums=......
- 个人算法竞赛模板(2024.5.4)
精简版:#include<algorithm>#include<cmath>#include<cstring>#include<iostream>#include<map>#include<queue>#include<set>#include<stack>#include<string>#include<vector>#include<......
- 网友开放的开源项目:网页版的A*算法可视化演示程序
相关项目:https://xueqiaoxu.me/#projects项目介绍:AJavaScriptpath-findinglibraryforgridbasedgames.Italsocomesalongwithaninteractivevisualizationofnumerousstrategies.项目地址:https://github.com/qiao/PathFinding.js演示地址:https://qia......
- 算法随笔——manacher
非常好学习资料manacher求最长回文子串暴力枚举回文中心\([1,n]\),暴力向两边拓展,然后\(checkmax\)。时间复杂度\(O(n^2)\)可以用二分哈希优化至\(O(n\logn)\)算法思路当求解第\(i\)个字符为回文中心的时候,已经知道了\([1,i-1]\)之间的信息。于是引入\(p[i]\):......