
算法
武田晴海
一名普通的Prepared game programmer。
展开
-
Unity与C#以及C++跟算法
同时很多项目会在我的github上进行开源。欢迎大家的关注,如果可以的话请不要吝啬你的小心心,希望我们可以一起进步,朝着更强大技术力的自己前行。wyryyds.github.io上更新。欢迎大家一起学习交流!原创 2022-10-08 12:24:23 · 685 阅读 · 1 评论 -
静态单链表
静态单链表的实现:开一个n数组存储我们的数据域,开一个ne数组储存我们的指针域(形式上)。idex表示当前操作位置。#include<bits/stdc++.h>using namespace std;const int N=1e5+10;int head,idex, n[N],ne[N];void init(){ head=-1; idex=0;}void add_head(int x){ n[idex]=x; ne[idex]=head原创 2022-05-21 12:00:19 · 303 阅读 · 0 评论 -
力扣85题最大矩形题解
给定一个仅包含 0 和 1 、大小为 rows x cols 的二维二进制矩阵,找出只包含 1 的最大矩形,并返回其面积。示例 1:输入:matrix = [["1","0","1","0","0"],["1","0","1","1","1"],["1","1","1","1","1"],["1","0","0","1","0"]]输出:6解释:最大矩形如上图所示。示例 2:输入:matrix = []输出:0示例 3:输入:matrix = [["0"]]输出:0示原创 2022-05-20 20:31:30 · 866 阅读 · 0 评论 -
DFS及洛谷P1605迷宫题解
意识到自己很菜已经很久了,今天终于下定决心要把DFS跟BFS好好学一下。虽然已经决定走游戏开发的道路了,但是无论如何,算法都是不能落下的一课。关于BFS跟DFS的定义,网上已经有很多非常详细的解法了,这里也就不在啰嗦。下面看例题,是洛谷的P1605。上题目。首先题目是非常经典的迷宫例题,唯一的不同在于,要求每个位置都必须只走一遍。很容易想到用dfs搜索,如果达到终点,那么就把方案总和++。同时我们需要确认当前每一个位置的状态,如果当前位置已经被遍历,那么我们需要把当前位置做好标记,同时需..原创 2022-04-03 21:37:50 · 4012 阅读 · 1 评论 -
力扣21合并两个有序链表之双指针法(迭代法)以及一些小心得
题目描述如下:依据题意,很容易想到的办法就是在两个链表都不为空的时候判断,优先把小的数据丢进去。之后特判一下边界,如果某个链表为空,那我们直接把节点接在另一个链表尾端即可。详细AC代码如下;在三目运算符那一块,我感觉有点不清晰,于是我加了个括号,接着神奇的事情发生了。耗时减少了一半!仅仅因为在最后一个特判边界条件的三目运算符那里多加了一个括号。我在查阅了很多的资料之后还是无法得到很好的回答,但是借此记录一下这一神奇的事情,也希望有大佬能在评论区帮我解答。同时...原创 2022-03-29 17:36:49 · 651 阅读 · 0 评论 -
快速排序算法【C语言】&洛谷P1177 【模板】快速排序
快速排序算法作为最基础的算法之一,同时也是我们最常用的算法,c++也自带了sort之一快速排序的算法来方便我们的使用,今天我们就一起来学习一下简单快排的原理。洛谷的P1271就是这样的一个题目。事实就是,在昨晚之前,我从来没有去了解过快速排序的原理,在昨晚遇到这个题目,我查了一点资料,大概了解了一下快速排序的原理,它其实是对冒泡排序的一种优化,先从需要排序的数列中取定一个特殊值,将其余的数与其比较,小的放在一边,大的放在一边,这样我们就把需要排序的数组从一变成了二,再对这两个数组进行同样的操作,递归下去原创 2022-02-11 16:46:10 · 2013 阅读 · 1 评论 -
洛谷P2240 【深基12.例1】部分背包问题 题解
非常简单的一道贪心题,本苟蒻也是很轻易地一遍过(因为忽略了数据精度,所以第一遍0分,哈哈哈)没有什么多余的操作,开一个结构体数组,将单价最高的排在前面,然后遍历判断即可。下面是AC代码:#include<bits/stdc++.h> //万能头using namespace std;int main(void){ struct Q //定义一个结构体数组 { double sl; double zj; double dj;原创 2022-02-07 23:33:44 · 1041 阅读 · 0 评论 -
算法入门之洛谷p1255数楼梯 题解
题目描述楼梯有N阶,上楼可以一步上一阶,也可以一步上二阶。编一个程序,计算共有多少种不同的走法。输入输出格式输入格式:一个数字,楼梯数。输出格式:走的方式几种。输入样例:4输出样例:5说明60% N<=50100% N<=5000写的时候被折磨了一个小时,最开始以为这题只考斐波那契数,想着一遍for直接过,结果只有30分,一查才发现1000号的斐波那契数就已经大的无法想象了。于是想到高精加法,写起来也不会很麻烦,相比较一般的高精度加法,我们在这里需要.原创 2022-02-05 17:11:59 · 7711 阅读 · 2 评论