🧮 Algorithm Notebook


  • 简介
  • 目录大纲
  • 最新文档
  • 文集下载

    牛客网编程OJ的典型输入输出

    记得自己以前一直在Leetcode上刷题,只需要自己写方法的具体逻辑,不用考虑输入输出的问题,直到第一次面试字节的时候才知道原来有的面试是使用的一块白板,程序的输入、输出,甚至导包都需要自己来写,因此结果可想而知 😭,因此决定对牛客网上常见的输入输出进行总结,避免在面试的时候再次踩雷 💣,让自己可以更加专注于具体的逻辑,提升自己面试通过的概率 😉。 大家在熟悉了下面的输入输出模板后可以使用OJ ……

    ricear - 2023年5月31日 16:16


    无重复字符的最长子串

    ## 题目 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。 示例 1: txt 输入: s = "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。 示例 2: txt 输入: s = "bbbbb" 输出: 1 解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。 示例 3: txt 输入: s = "pwwkew" 输……

    ricear - 2022年9月9日 10:45


    常见排序算法

    ## 简单选择排序 算法原理 简单排序算法的基本思想为每一趟从待排序的数据元素中选择最小(最大)的一个元素作为首元素,直到所有元素排完为止。 参考代码 在算法实现时,每一趟确定最小元素的时候会通过不断地比较交换来使得首位置为当前最小。 交换是个比较耗时的操作,其实我们很容易发现,在还未完全确定当前最小元素之前,这些交换都是无意义的。 我们可以通过设置一个变量 minInd,每一次比较仅存储较……

    ricear - 2022年9月2日 20:52


    回溯算法解题框架

    ## 含义 回溯算法建立在 DFS 基础之上,与 DFS 的主要不同在于: DFS 是一个劲的往某一个方向搜索,等到到达一个方向的终点时,才恢复状态,回溯上一层。 回溯算法在达到结束条件后,就恢复状态,回溯上一层。 当问题需要回头,以此来查出所有的解的时候,使用回溯算法,即满足结束条件或者发现不是正确路径的时候(走不通),要撤销选择,回退到上一个状态,继续尝试,直到找出所有解为止。 解……

    ricear - 2022年8月28日 15:37


    斐波那契数列

    ## 题目 写一个函数,输入 n ,求斐波那契(Fibonacci)数列的第 n 项(即 F(N))。斐波那契数列的定义如下: F(0) = 0, F(1) = 1 F(N) = F(N - 1) + F(N - 2), 其中 N > 1. 斐波那契数列由 0 和 1 开始,之后的斐波那契数就是由之前的两数相加而得出。 答案需要取模 1e9+7(1000000007),如计算初始结果为:……

    ricear - 2022年8月25日 10:58



    ricear