题目描述 输入一个链表,反转链表后,输出新链表的表头。 解法:迭代解法和递归解法。 一、迭代解法:设置三个指针。主要思想就是边遍历链表的时候边反转。 1 /* 2 struct ListNode { 3 int val; 4 struct ListNode *next; 5 ListNode(int ...
分类:
其他好文 时间:
2019-03-26 13:27:33
阅读次数:
136
递归解法问题 从键盘输入一个整数(1~20) 则以该数字为矩阵的大小。把1,2,3…n*n 的数字依照顺时针螺旋的形式填入当中。比如: 输入数字2,则程序输出: 1 2 4 3 输入数字3,则程序输出: 1 2 3 8 9 4 7 6 5 输入数字4, 则程序输出: 1 2 3 4 12 13 14 ...
分类:
其他好文 时间:
2019-03-04 12:51:10
阅读次数:
147
LCA最小公共父节点解法: 1、二叉搜索树: 中序遍历是升序,前序遍历即按序插入建树的序列。 二叉搜索树建树最好用前序+中序,如果用前序建树,最坏情况会退化为线性表,超时。 最近公共祖先甲级: A1143,1151 利用二叉搜索树的性质寻找结点u和v的最低公共祖先(递归解法) 1)如果根结点的值大于 ...
分类:
其他好文 时间:
2019-02-17 00:59:00
阅读次数:
211
爬楼梯:斐波那契数列 假设你正在爬楼梯。需要n阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 注意:给定n是一个正整数。 非递归解法 class Solution { public int climbStairs(int n) { if (n==1) {.... ...
分类:
编程语言 时间:
2019-02-08 15:54:19
阅读次数:
181
前序遍历的递归解法: 方法一C++: 前序遍历的非递归方法: C++代码: ...
分类:
其他好文 时间:
2019-01-30 00:26:55
阅读次数:
179
1.题目描述 给定两个二叉树,编写一个函数来检验它们是否相同。 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。 示例 1: 示例 2: 示例 3: 2.解法一:递归 3.解法二:非递归 4.问题转化:树的序列化,比较字符串 ...
分类:
其他好文 时间:
2018-12-19 19:34:18
阅读次数:
155
//八皇后递归解法 //#include //using namespace std; #include int queen[9] = {-1,-1,-1,-1,-1,-1,-1,-1,-1}; int count = 0;//定义一个全局变量 int n;//(推广到n个皇后问题) bool av... ...
分类:
其他好文 时间:
2018-11-30 00:37:18
阅读次数:
194
八皇后递归详解 核心代码如下: //八皇后递归解法 #include<iostream> using namespace std; int queen[9] = {-1,-1,-1,-1,-1,-1,-1,-1,-1}; int count = 0;//定义一个全局变量 bool available ...
分类:
其他好文 时间:
2018-11-30 00:33:37
阅读次数:
265
题意:前序遍历二叉树 前序遍历 根->左子树->右子树 先递归解法: 非递归方法: 在了解非递归之前,我们先了解一下递归在计算机中是怎样实现的。 递归,说白了就是将函数指针放入栈中!然后根据先进后出的原则进行递归! 其实非递归方法就是在模拟递归方法!想一下!如何将遍历到左子树之后又如何遍历到右子树呢 ...
分类:
其他好文 时间:
2018-11-04 19:45:16
阅读次数:
120