- 博客(11)
- 资源 (5)
- 收藏
- 关注
原创 剑指offer--数组中出现次数超过一半的数
题目描述数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。思路:采用阵地攻守的思想: 第一个数字作为第一个士兵,守阵地;count = 1; 遇到相同元素,count++; 遇到不相同元素,即为敌人,同归于尽,count--
2017-07-12 16:17:09 264
原创 剑指offer--字符串的排列
题目描述输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。输入描述:输入一个字符串,长度不超过9(可能有字符重复),字符只包括大小写字母。全排列的题还是写了好几道了。用dfs和递归的;康托展开式的 这道题,长度不超过9 dfs 还是
2017-07-12 15:24:26 169
原创 剑指offer--二叉搜索树与双向链表
题目描述输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。思路:按照中序遍历的顺序,访问节点,然后在改变链表;package 剑指offerfrom27题;public class 二叉搜索树与双向链表 { class TreeNode { int val = 0; Tree
2017-07-12 10:40:30 149
原创 剑指offer--复杂链表的赋值
题目描述输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点),返回结果为复制后复杂链表的head。(注意,输出结果中请不要返回参数中的节点引用,否则判题程序会直接返回空)思路:先赋值原来的链表,不管random,然后把复制到的链表插入元链表,比如A-B复制了a-b,就插入成A-a-B-b;那么A.random指向B的话,a.r
2017-07-11 21:07:54 418
原创 剑指offer--二叉树中和为某一值的路径
题目描述输入一颗二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。二叉树的遍历,深度搜索DFS; 模板import java.util.ArrayList;public class 二叉树中和为某一值的路径 { static class TreeNode { int val =
2017-07-11 16:19:25 172
原创 剑指offer--二叉搜索树的后序遍历序列
题目描述输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。二叉搜索树:根节点的值大于左节点的值,小于右节点的值;后序遍历:按照左右根节点的顺序遍历二叉树;/*首先,二叉搜索树,左子树值小于根节点,有子树值大于根节点 * 然后后序遍历是左右根的顺序----递归*/public
2017-07-11 09:12:08 165
原创 剑指offer--从上往下打印二叉树--层次遍历、广度优先搜索
题目描述从上往下打印出二叉树的每个节点,同层节点从左至右打印。二叉树的层次遍历,广度优先搜索,用队列实现即可;以前有个BFS的写法思路:点这。。import java.util.ArrayList;import java.util.LinkedList;import java.util.Queue;/*层次遍历算法 * 实际就是广度优先BFS*/p
2017-07-09 20:20:41 330
原创 剑指offer--栈的压入、弹出序列
题目描述输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长度是相等的)只是按照别人的思路写的;FLAG:复习的时候再写一遍package 剑
2017-07-09 17:48:54 175
原创 剑指offer--包含Min函数的栈
题目描述定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数。其实并没有太懂这道题的意思package 剑指offer;import java.util.Stack;/*思路就是一个栈放数据,一个栈放最小的数,保证最小的数一定在栈顶*/public class 包含Min函数的栈 { public static void main(S
2017-07-09 16:09:04 179
原创 Servlet学习笔记2-第一个servlet
1.在eclipse中新建一个项目Dynamic Web Project;2.继续new 一个servlet程序,实际是一个继承HttpServlet的java类;在doGet方法下写这么两句话 // 设置响应内容类型 response.setContentType("text/html"); // 实际的逻辑是在这里 PrintWriter
2017-07-05 10:36:06 203
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人