根据二叉树的前序遍历和中序遍历确定后序遍历 输入:第一行:结点数目 第二行:前序遍历数组 第三行:中序遍历数组 输出 :后序遍历数组 例如:第一行:7 第二行:6 4 2 5 3 1 7 第三行:4 2 5 6 1 3 …
分类:算法
【数据结构与算法(十八)】
1、图形能使很多复杂的抽象问题变得很形象,特别是对于链表、二叉树的问题 2、二叉树问题:关于遍历?关于排序?挺多都是用递归的方法解决的 3、很多抽象的题不能一下子得到解题的思路,那就举几个简单的例子,然后找出规律,重点在…
谢尔排序
谢尔排序的名称源于它的发明者Donald Shell,该算法石冲坡二次时间屏障的第一批算法之一,不过,知道它最初被发现的如干年后才证明了它的亚二次时间界。它通过比较相距一定时间间隔的元素来工作;各趟 比较所用的距离随着算…
LeetCode_Merge k Sorted Lists
Merge k sorted linked lists and return it as one sorted list. Analyze and describe its complexity. &…
P2384 最短路(落谷)
题目背景 狗哥做烂了最短路,突然机智的考了Bosh一道,没想到把Bosh考住了…你能帮Bosh解决吗? 他会给你100000000000000000000000000000000000%10金币w 题目描述 …
弹飞绵羊 分块
题目描述 某天,Lostmonkey发明了一种超级弹力装置,为了在他的绵羊朋友面前显摆,他邀请小绵羊一起玩个游戏。游戏一开始,Lostmonkey在地上沿着一条直线摆上n个装置,每个装置设定初始弹力系数ki,当绵羊达到第…
常见的排序算法--冒泡排序--选择排序--二分排序--插入排序--归并排序--快速排序
1.冒泡排序: public static void bubbleSort(int[] arr) { int temp; for(int i=0;i<arr.length;i++) { for(int j=i+1;…
旋转图像
给定一个 n × n 的二维矩阵表示一个图像。 将图像顺时针旋转 90 度。 说明: 你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像。 示例 1: 给定 m…
冒泡排序、插入排序、选择排序及其实现
开始复习基本算法了,今天下午看了三个排序算法,都是入门级别的。 一、冒泡排序 1、思想:有两层循环,当前的位置如果到了i(第一层循环),那么就从i+1到n中开始遍历(第二层循环),为的是在i到n中找到最小的,放置在当前的…
(笔试)一些基本计算问题<一>
问题一:判断一个数是否是回文数。 回文数在笔试中经常出现,除了字符串操作和数据机构外的考题经常出现。 回文数也就是一个思维,也就是使用一个循环,基本上自己书写一遍就不会再觉得很难了。它的变形可能是判断一个字符串数字是否是…
VC++ 下FFT试验
#include using namespace std; #define MAX 2048 #define FFT_1024 #define FFTNUM 1024 #ifdef FFT_1024 cons…
帶重複元素以及不帶重複元素的全排列
被一塊石頭絆倒兩次是真的丟人——不寫引子不舒服斯基 遞歸思想 遞歸的思想中有幾個很重要的特性,對於使用遞歸求解的問題,把握好這幾個因素就能把代碼寫好了。 1. 終止條件。遞歸的方法有一個最終的終止條件,這個條件滿足題目所…