![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
算法刷题
一些常见的算法
隔壁的NLP小哥
积跬步,至千里
展开
-
数据结构与算法——排序算法(二)
数据结构与算法——排序算法(二) 1、归并排序 1.1 基本思想 归并排序是利用分治的策略,将原始的数组分解成小的数组然后进行递归排序的过程。该策略主要包括两个部分,第一个部分是分 , 第二个部分是治。分就是将原始的数组分解成若干个小的数组,治就是将小的的数组合并成有序的过程。类似于下图所示: 根据上图所示,我首先经历的是一个分的过程,我们数据分解成单个元素构成的数组的时候,此时数组中的元素就是...原创 2020-02-21 17:07:27 · 134 阅读 · 0 评论 -
数据结构与算法——排序算法(一)
数据结构与算法——排序算法 1 、冒泡排序 1.1 基本思想 冒泡排序的核心在于**第i次排序将将第i大的元素放置到对应的位置。**也就是说,第一次将最大的元素放置到最后的位置,第二次将第二大的元素放置到倒数第二个位置。依次类推,最后一趟是将第二小的元素放置到对应得位置。可以确定对于常规的数组,数组长度为size,那么也就需要迭代size-1趟。 那么,如何将对应的元素放到对应的位置呢?这里也就是...原创 2020-02-21 10:46:02 · 167 阅读 · 0 评论 -
LeetCode刷题——链表相关(一)
LeetCode刷题——链表相关 2、链表逆序 2.1 题目描述 已知链表头结点指针head,将链表逆序,要求不能申请额外的空间。 2.2 实现思想 依次遍历链表中的每一个节点,每遍历一个节点就逆序一个节点。具体流程如下: 首先,定义一个指针(无需申请内存),指向链表的头结点。 第一轮 ...原创 2020-02-09 18:28:55 · 489 阅读 · 0 评论 -
剑指Offer——数学问题
剑指Offer——数学问题 1、第7题 斐波那契数列 题目描述: 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。 n<=39 解题思路: 这道题的思路就不多介绍了,我们这里给出递归和非递归的实现方式。 代码实现: 递归方式(这里在牛客网上会超时) #include<iostream> using namespace std;...原创 2020-04-06 23:28:55 · 571 阅读 · 0 评论 -
剑指Offer——字符串相关
剑指Offer——字符串相关 1、第二题 替换空格 题目描述: 请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 基本思路: 首先,统计整个字符串的长度和空格的个数,在原有的基础上增加空格个数*2来放置“20”,获取到新的长度之后,从后向前遍历,依次放置新的元素。 代码实现: class ...原创 2020-04-06 18:52:57 · 143 阅读 · 0 评论 -
剑指Offer——数组相关
剑指Offer——数组相关 1、第1题 二维数组中的查找 题目描述: 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 解题思路: 本题我们需要着重的考虑数组的结构,需要关注到的是数组无论是从行还是从列的角度,都是一个单调递增的过程。我们将这个二维数组看成...原创 2020-04-01 17:52:40 · 150 阅读 · 0 评论 -
剑指Offer——链表问题
剑指Offer——链表问题 1、第3题 从尾到头打印链表 题目描述: 输入一个链表,按链表从尾到头的顺序返回一个ArrayList。 基本思路: 1、链表原地翻转。 2、翻转之后进行遍历 代码实现: class Solution { public: vector<int> printListFromTailToHead(ListNode* head) { vec...原创 2020-03-31 12:37:45 · 125 阅读 · 0 评论 -
剑指Offer——二叉树部分
剑指Offer——二叉树部分 一、二叉树的构建相关 1.1、第4题、重建二叉树 题目描述: 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。 基本思路: 对于一个二叉树而言,我们关注遍历过程中根节点的位置,对于前...原创 2020-03-31 00:49:49 · 209 阅读 · 0 评论