0

leetcode| 51. N皇后问题

n 皇后问题研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。 上图为 8 皇后问题的一种解法。 给定一个整数 n,返回 n 皇后不同的解。 示例: 输入: 4 解释: 4 皇后问题存在如下两个不同的解法。 [ [".Q..", // 解法 1 "...Q", "Q ...

东寻 发布于 2020-02-14 15:24 评论(0)阅读(27)
0

树的遍历

树的遍历有3种:先根遍历、中根遍历、后根遍历; 先根遍历:如果该二叉树为空树,则空操作,否则先访问根结点,再先根遍历左子树,最后先根遍历右子树。 1 //该二叉树用二叉链表存储,结点类型BiTreeNode 2 void pre_oder(BiTreeNode *root){ 3 if(root!= ...

eason66 发布于 2020-02-14 14:02 评论(0)阅读(16)
0

leetcode| 125. 验证回文串

给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。 说明:本题中,我们将空字符串定义为有效的回文串。 示例 1: 输入: "A man, a plan, a canal: Panama" 输出: true 示例 2: 输入: "race a car" 输出: false ...

东寻 发布于 2020-02-14 13:29 评论(0)阅读(18)
0

旋转数组的最小数字(两段非递减数列找最小值)

把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。 思路 二分查找,此处 ...

东寻 发布于 2020-02-14 11:13 评论(0)阅读(28)
0

用两个栈实现队列

用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 思路 push时直接入栈stack1,pop时若stack2为空则stack1出栈到stack2后stack2.pop(),否则stack2直接pop。 时间复杂度O(1)。 代码 ...

东寻 发布于 2020-02-14 09:40 评论(0)阅读(17)
0

小波多分辨率分析框架

本文对小波多分辨率分析框架进行了简要介绍。对定理不作详细证明,仅提供证明思路。 ...

告别年代 发布于 2020-02-13 18:32 评论(0)阅读(24)
0

leetcode| 295. 数据流的中位数

中位数是有序列表中间的数。如果列表长度是偶数,中位数则是中间两个数的平均值。 例如, [2,3,4] 的中位数是 3 [2,3] 的中位数是 (2 + 3) / 2 = 2.5 设计一个支持以下两种操作的数据结构: void addNum(int num) 从数据流中添加一个整数到数据结构中。 do ...

东寻 发布于 2020-02-13 18:00 评论(0)阅读(19)
0

leetcode| 62. 不同路径

题目描述 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。 问总共有多少条不同的路径? 说明:m 和 n 的值均不超过 100。 示例 1: 输入: m = 3 ...

东寻 发布于 2020-02-13 16:21 评论(0)阅读(13)
0

数组

数组 随机访问 1. 数组是一种线性表数据结构,用一组连续的内存空间,来存储同一类型的数据 线性表:数据排成线一样的结构,最多只有前和后两个方向 数据、栈、队列、链表都是线性表结构 堆、图、二叉树等数据之间不具有简单前后关系的结构,所以是非线性表结构 2. 随机访问 在连续的地址空间存相同类型的数据 ...

pgjett 发布于 2020-02-13 14:37 评论(0)阅读(37)
0

重建二叉树

题目描述 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。 思路 将中序数组按照下标i划分两部分,左子树的前序下 ...

东寻 发布于 2020-02-13 13:18 评论(0)阅读(17)
0

从尾到头打印链表

题目描述 输入一个链表,按链表从尾到头的顺序返回一个ArrayList。 代码 ...

东寻 发布于 2020-02-13 12:51 评论(0)阅读(12)
0

替换空格

题目描述 请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 代码 ...

东寻 发布于 2020-02-13 12:49 评论(0)阅读(12)
0

二叉树面试题:前中序求后序、中后序求前序

在面试时,避免不了的会遇到一些数据结构的面试题,今天我们就来了解一下二叉树的经典面试题: ...

万猫学社 发布于 2020-02-13 12:27 评论(0)阅读(102)
5

五大常见算法策略之——动态规划策略(Dynamic Programming)

Dynamic Programming Dynamic Programming是五大常用算法策略之一,简称DP,译作中文是“动态规划”,可就是这个听起来高大上的翻译坑苦了无数人,因为看完这个算法你可能会觉得和动态规划根本没太大关系,它对“动态”和“规划”都没有太深的体现。 举个最简单的例子去先浅显的 ...

头发是我最后的倔强 发布于 2020-02-13 10:42 评论(1)阅读(290)
0

什么是队列?

与前面提到的 "数据结构" 相同,队列中的数据也呈 线性排列 。虽然与 "栈" 有些相似,但队列中添加和删除数据的操作分别是在 两端 进行的,就和队列这个名字一样,把它想象成排成一队的人更容易理解。在队列中,处理总是从第一名开始往后进行,而新来的人只能排在队尾。 队列是什么? 如上就是队列的概念图, ...

武培轩 发布于 2020-02-13 01:11 评论(0)阅读(36)
0

牛客练习赛56 B 小琛和他的学校

题目链接:https://ac.nowcoder.com/acm/contest/3566/B 思路:一条路可把图分为左右两部分。 l_ci, l_peo, r_ci, r_peo, w 分别为左边城市数和人数,右边城市数和人数,该路的费用。 我们知道,左边的人要去右边的r_ci个城市,右边的人要去 ...

SummerMingg 发布于 2020-02-13 00:59 评论(0)阅读(18)
0

牛客练习赛56 E 小雀和他的王国

题目链接:https://ac.nowcoder.com/acm/contest/3566/E 思路:tarjan缩点,桥重建图,dfs跑树的直径。 1 #include <iostream> 2 #include <cstdio> 3 #include <vector> 4 #include <a ...

SummerMingg 发布于 2020-02-13 00:48 评论(0)阅读(11)
0

浮点数二分算法

一、浮点数二分算法 1.1 编写浮点数二分,记住下面的内容,代码也就游刃有余了! (1) 首先找到数组的中间值,mid=(left+right) 1,区间[left, right]被划分成[left, mid]和[mid , right]。 (2) 然后通过check(mid)判断中间值是不是满足这 ...

界内嘻哈 发布于 2020-02-12 21:19 评论(0)阅读(20)
0

整数二分算法

一、整数二分算法 1.1 编写整数二分,记住下面的内容,代码也就游刃有余了! (1) 首先找到数组的中间值,mid=(left+right) 1,区间[left, right]被划分成[left, mid]和[mid + 1, right];如果是mid = l + r + 1 1,区间[left, ...

界内嘻哈 发布于 2020-02-12 20:55 评论(0)阅读(24)
0

二维数组中的查找

题目描述 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 思路 从左下角开始查找, 当要查找数字比左下角数字大时,右移; 当要查找数字比左下角数字小时,上 ...

东寻 发布于 2020-02-12 20:45 评论(0)阅读(11)