自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

毛凡的博客

生活有时候挺没劲的,但活着却挺有意思

  • 博客(15)
  • 问答 (3)
  • 收藏
  • 关注

原创 二叉搜索树的第k个结点

题目描述给定一颗二叉搜索树,请找出其中的第k大的结点。例如, 5 / \ 3 7 /\ /\ 2 4 6 8 中,按结点数值大小顺序第三个结点的值为4。思路:因为是二叉搜索树,所以可以用中序遍历的方式存储然后输出第k个结点,要注意为0和大于结点大小的K值;代码如下:import java.util.ArrayList;/*public class TreeNod

2016-08-10 14:45:19 1514

原创 数据流中的中位数

题目描述如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值。如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值。思路:主要是判断是奇数还是偶数 用按位与&去判别最后一位是1 还是 0 ,是0表示偶数,是1表示奇数代码如下:import java.util.Collections;im

2016-08-10 14:43:29 473

原创 把二叉树打印成多行

题目描述从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。代码如如下:import java.util.ArrayList;import java.util.ArrayList;import java.util.Queue;import java.util.LinkedList;/*public class TreeNode { int v

2016-08-09 15:59:09 576

原创 序列化反序列二叉树

题目描述请实现两个函数,分别用来序列化和反序列化二叉树思路:序列化的时候遇到null的结点就补充“#,” ,反序列化的时候先split(",");代码如下:/*public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; publ

2016-08-09 15:58:06 497

原创 对称的二叉树

请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。思路:主要先判断根节点下面的两个左右子节点是否相等,然后再用递归判断左子树的左孩子和右子树的右孩子是否相等,还有左子树的右孩子和右子树的左孩子是否相等,如果在递归的过程中并不满足则返回false;代码如下:/*public class TreeNode { int v

2016-08-08 16:57:58 409

原创 按之字形顺序打印二叉树

import java.util.ArrayList;import java.util.Queue;import java.util.LinkedList;/*public class TreeNode {    int val = 0;    TreeNode left = null;    TreeNode right = null;    public

2016-08-08 16:55:45 503

原创 二叉树的下一个结点

题目描述给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。/*public class TreeLinkNode { int val; TreeLinkNode left = null; TreeLinkNode right = null; TreeLinkNode

2016-08-07 17:35:12 457 5

原创 删除链表中重复的结点

题目描述在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5代码如下:/* public class ListNode { int val; ListNode next = null; ListNode(int val) {

2016-08-07 17:33:41 1108 5

原创 链表中环的入口结点

题目描述一个链表中包含环,请找出该链表的环的入口结点。思路:设置两个引用 A和B 指向头,然后一个走一步,一个走两步,然后找到相等的结点,然后再另一个从头开始,分别都走一步最后相等的就是环的入口结点代码如下:/* public class ListNode { int val; ListNode next = null; ListNode

2016-08-06 20:02:48 308

原创 字符流中第一个不重复

题目描述请实现一个函数用来找出字符流中第一个只出现一次的字符。例如,当从字符流中只读出前两个字符"go"时,第一个只出现一次的字符是"g"。当从该字符流中读出前六个字符“google"时,第一个只出现一次的字符是"l"。 输出描述:如果当前字符流没有存在出现一次的字符,返回#字符。思路:创建256个int大小的数组,然后分别++找出重复的代码如下:import java.util.Ar

2016-08-06 20:00:07 330

原创 表示数值的字符串

题目描述请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100","5e2","-123","3.1416"和"-1E-16"都表示数值。 但是"12e","1a3.14","1.2.3","+-5"和"12e+4.3"都不是思路:用字符串转换代码如下:public class Solution { public boolean is

2016-08-06 19:58:07 258

原创 数组中重复的数字

题目描述在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中任意一个重复的数字。 例如,如果输入长度为7的数组{2,3,1,0,2,5,3},那么对应的输出是重复的数字2或者3。思路:创建一个256的大小的数组,然后用循环找一下是否有重复的数字,然后用随机函数去输出一个即可否则为fals

2016-08-04 16:34:09 332

原创 把字符串转换成整数

题目描述将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数。思路:设置两个标志位 一个tag 为1表示是正数,为0表示是负数,一个index,为‘+’则index是1,为‘-’则index是-1,什么都没index是0     再用一个result去接受所有的数,result  =result * 10 + aa;从第一个开始慢慢加起来,不过每次都要判断是否上下

2016-08-04 16:32:35 456

原创 求1+2+3+...+n

题目描述求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。思路:用递归(结束条件是n==0)和&&的方式代码如下:public class Solution { public int Sum_Solution(int n) { int sum = n;

2016-08-03 18:54:19 612

转载 Java集合类详解

Collection├List│├LinkedList│├ArrayList│└Vector│ └Stack└SetMap├Hashtable├HashMap└WeakHashMapCollection接口  Collection是最基本的集合接口,一个Collection代表一组Object,即Collection的元素(Element

2016-08-01 21:09:05 172035 21

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除