- 博客(6)
- 收藏
- 关注
原创 阿里笔试(走迷宫)
小强在玩一个走迷宫的游戏,他操控的人物现在位于迷宫的起点,他的目标是尽快的达到终点。每一次他可以选择花费一个时间单位向上或者向下或者向左或者向右走一格,或是使用自己的对称飞行器花费一个时间单位瞬移到关于当前自己点中心对称的格子,且每一次移动的目的地不能存在障碍物。具体来数说,设当前迷宫有n行m列,如果当前小强操控的人物位于点A(x, y),那么关于点A中心对称的格子B(x’, y’)满足x + x...
2020-04-03 12:19:34 1051
原创 算法与数据结构-排序篇
主要包括(选择,冒泡,插入,归并,非递归归并,快排,双路快排,三路快排,非递归快排,堆排)算法复杂度以及内存分析算法平均复杂度最坏情况原地排序额外空间是否稳定选择排序o(n2n^{2}n2)o(n2n^{2}n2)是o(1)是冒泡排序o(n2n^{2}n2)o(n2n^{2}n2)是o(1)是插入排序o(n2n^{2}n2)o(n...
2020-04-03 11:58:07 232 1
原创 阿里笔试题(快速幂算法)
现有n个人,要从这n个人中选任意数量的人组成一支队伍,再在这些人中选出一名队长,求不同的方案数对109+710^{9}+7109+7取模的结果。如果两个方案选取的人的集合不同或者选出的队长不同,则认为这两个方案是不同的。(时间限制:C/C++ 1s 其他语言 2s 空间限制:C/C++ 262144K, 其他语言 524288K)...
2020-03-25 08:31:16 852
原创 Leetcode分门别类 - 动态规划-Leetcode70-Climbing Stairs
动态规划Leetcode 70 爬楼梯问题问题描述:每次爬楼梯可以爬一阶或者两阶,爬上N阶楼梯共有多少种爬法。问题分析:爬到n阶的那一步可能分为两种情况,又第n-1阶或者n-2阶爬上来,于是F(n) = F(n-1) + F(n-2)又回到斐波拉契数列。记忆搜索解法class Solution {private: vector<int> memo; i...
2020-02-22 11:41:54 219
原创 Leetcode分门别类 - 动态规划问题引入
动态规划动态规划的定义将原问题拆解成若干子问题,同时保存子问题的答案,使得每个子问题只求解一次,最终获得原问题的答案。递归问题重叠子问题记忆化搜索动态规划自顶向下的解决问题自底向上的解决问题注:很多时候,记忆化搜索过程也是动态规划问题的引入:斐波拉契数列(Fibonacci Sequence)F(0)=0, F(1)=1, F(n) = F(n-1) + F(n-2)// A cod...
2020-02-22 10:03:45 221 1
原创 算法与数据结构
算法与数据结构笔记第一课课程github链接: https://github.com/liuyubobobo/Play-with-Algorithms学习要求需要掌握最基础的语言知识了解数组,链表,堆,栈等线性结构对基本的算法知识有常识性的了解:如递归,遍历,算法复杂度无法覆盖所有的数据结构算法堆: 斐波拉契堆树: 线段树图: 网络流算法思想分治算法 - 归并排序,...
2020-02-07 10:05:48 707
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人