Java面试题集
文章平均质量分 67
bxhdocker
这个作者很懒,什么都没留下…
展开
-
Java面试题目---偶串
题目:如果一个字符串由两个相同字符串连接而成,就称这个字符串是偶串。例如"xyzxyz"和"aaaaaa"是偶串,但是"ababab"和"xyzxy"却不是。牛牛现在给你一个只包含小写字母的偶串s,你可以从字符串s的末尾删除1和或者多个字符,保证删除之后的字符串还是一个偶串,牛牛想知道删除之后得到最长偶串长度是多少。 输入描述:输入包括一个字符串s,字符串长度length(2原创 2017-07-25 23:26:20 · 742 阅读 · 1 评论 -
java面试题:字符串的反转
public class reverseString { /** * 实现字符串反转的两种方式 */ public static void main(String[] args) { // TODO Auto-generated method stub String str="how are you"; StringBuffer sb=new StringBuffer(原创 2017-08-21 15:42:13 · 436 阅读 · 0 评论 -
java面试题--已知先序和中序遍历求后序遍历
class Node { public int data; public Node left; public Node right; public Node() { } public Node(int data) { this.data = data; this.left=null; this.left=null; }}public class BinaryTre原创 2017-08-30 10:10:28 · 2918 阅读 · 0 评论 -
java面试题--判断一颗二叉树是不是对称
请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { this.val = val;原创 2017-08-30 11:22:24 · 765 阅读 · 0 评论 -
java面试题(剑指offer):序列化二叉树
请实现两个函数,分别用来序列化和反序列化二叉树/*public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { this.val = val; }}*/public cl原创 2017-08-30 13:21:00 · 338 阅读 · 0 评论 -
java面试题---数组中只出现一次的数字
一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字一种思想的两种写法:第一:class Solution1 { public void FindNumsAppearOnce(int [] array,int num1[] , int num2[]) { if(array.length < 2) return ; int原创 2017-08-30 16:00:45 · 486 阅读 · 0 评论 -
java面试题(剑指offer):之字形打印二叉树
请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推。import java.util.*; /*public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; p原创 2017-08-30 16:53:57 · 258 阅读 · 0 评论 -
java面试题(剑指offer):按层打印二叉树
从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。import java.util.ArrayList;import java.util.LinkedList;import java.util.Queue;class TreeNode { int val = 0; TreeNode left = null; TreeNode right原创 2017-08-30 21:05:16 · 522 阅读 · 0 评论 -
java面试题(剑指Offer):找出该链表的环的入口结点
一个链表中包含环,请找出该链表的环的入口结点class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; }}public class Solution { public ListNode EntryNodeOf原创 2017-08-31 16:04:31 · 278 阅读 · 1 评论 -
java笔试题:数组查找,查找和为最大的子数组
package com.bxh.array;import java.util.ArrayList;import java.util.Arrays;public class findMaxMin { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated me原创 2017-09-01 15:14:34 · 840 阅读 · 2 评论 -
java面试题:顺时针打印矩阵
题目描述输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数字1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10.import java.util.ArrayList;public class CopyOfprintArray1原创 2017-08-03 12:55:50 · 368 阅读 · 0 评论 -
java面试题:输出旋转数组的最小元素(剑指offer)
题目描述把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。import java.util.ArrayList;public class sortArrayl原创 2017-07-31 23:24:40 · 240 阅读 · 0 评论 -
Java面试题:输出字符串的所有组合
问题描述:假设字符串中所有的字符都不重复,输出字符串中的所有组合!public class StringTestDemo { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub String s="abc"; char[] c原创 2017-08-21 14:51:24 · 1509 阅读 · 0 评论 -
java面试题:制造回文字符串
题目:牛牛有一些字母卡片,每张卡片上都有一个小写字母,所有卡片组成一个字符串s。牛牛一直认为回文这种性质十分优雅,于是牛牛希望用这些卡片拼凑出一些回文串,但是有以下要求:1、每张卡片只能使用一次2、要求构成的回文串的数量最少牛牛想知道用这些字母卡片,最少能拼凑出多少个回文串。例如: s = "abbaa",输出1,因为最少可以拼凑出"ababa"这一个回文串s = "abc",原创 2017-07-26 10:21:58 · 1026 阅读 · 0 评论 -
JAVA面试题----最长DNA序列--java实现
题目:牛牛从生物科研工作者那里获得一段字符串数据s,牛牛需要帮助科研工作者从中找出最长的DNA序列。DNA序列指的是序列中只包括'A','T','C','G'。牛牛觉得这个问题太简单了,就把问题交给你来解决。例如: s = "ABCBOATER"中包含最长的DNA片段是"AT",所以最长的长度是2。import java.util.Scanner;public class fi原创 2017-07-26 21:37:23 · 1694 阅读 · 0 评论 -
java面试题——编程题:彩色瓷砖
牛牛喜欢彩色的东西,尤其是彩色的瓷砖。牛牛的房间内铺有L块正方形瓷砖。每块砖的颜色有四种可能:红、绿、蓝、黄。给定一个字符串S, 如果S的第i个字符是’R’, ‘G’, ‘B’或’Y’,那么第i块瓷砖的颜色就分别是红、绿、蓝或者黄。 牛牛决定换掉一些瓷砖的颜色,使得相邻两块瓷砖的颜色均不相同。请帮牛牛计算他最少需要换掉的瓷砖数量。 输入描述:输入包括一行,一个字符串S,字符串长度length(原创 2017-07-26 21:43:03 · 1269 阅读 · 0 评论 -
java面试题:小米git
git是一种分布式代码管理工具,git通过树的形式记录文件的更改历史,比如: base'示例1输入[01011,10100,01000,10000,10000],1,2输出1import java.util.ArrayList;import java.util.List;import java.util.Stack;public cl原创 2017-07-27 11:36:28 · 1186 阅读 · 0 评论 -
JAVA面试题:棋子翻转
题目:在4x4的棋盘上摆满了黑白棋子,黑白两色的位置和数目随机其中左上角坐标为(1,1),右下角坐标为(4,4),现在依次有一些翻转操作,要对一些给定支点坐标为中心的上下左右四个棋子的颜色进行翻转,请计算出翻转后的棋盘颜色。给定两个数组A和f,分别为初始棋盘和翻转位置。其中翻转位置共有3个。请返回翻转后的棋盘。测试样例:[[0,0,1,1],[1,0,1,0],原创 2017-07-27 16:53:21 · 653 阅读 · 0 评论 -
Java面试题:寻找coder;
题目描述请设计一个高效算法,再给定的字符串数组中,找到包含"Coder"的字符串(不区分大小写),并将其作为一个新的数组返回。结果字符串的顺序按照"Coder"出现的次数递减排列,若两个串中"Coder"出现的次数相同,则保持他们在原数组中的位置关系。给定一个字符串数组A和它的大小n,请返回结果数组。保证原数组大小小于等于300,其中每个串的长度小于等于200。同时保证一定原创 2017-07-28 17:22:29 · 335 阅读 · 0 评论 -
字符串--java面试题, 首个重复字符串,二分查找
1、题目描述对于一个字符串,请设计一个高效算法,找到第一次重复出现的字符。给定一个字符串(不一定全为字母)A及它的长度n。请返回第一个重复出现的字符。保证字符串中有重复字符,字符串的长度小于等于500。测试样例:"qywyer23tdd",11返回:ypublic class FirstRepeat { public char findFirstRe原创 2017-07-28 17:27:37 · 1839 阅读 · 0 评论 -
网易编程笔试题(一):合唱团
有 n 个学生站成一排,每个学生有一个能力值,牛牛想从这 n 个学生中按照顺序选取k 名学生,要求相邻两个学生的位置编号的差不超过d,使得这 k 个学生的能力值的乘积最大,你能返回最大的乘积吗? 输入描述:每个输入包含 1个测试用例。每个测试数据的第一行包含一个整数 n (1 ,表示学生的个数,接下来的一行,包含n 个整数,按顺序表示每个学生的能力值ai(-50原创 2017-08-14 08:46:14 · 603 阅读 · 0 评论 -
网易编程笔试题(二):地牢逃脱
给定一个 n 行 m 列的地牢,其中'.' 表示可以通行的位置,'X'表示不可通行的障碍,牛牛从 (x0 , y0 )位置出发,遍历这个地牢,和一般的游戏所不同的是,他每一步只能按照一些指定的步长遍历地牢,要求每一步都不可以超过地牢的边界,也不能到达障碍上。地牢的出口可能在任意某个可以通行的位置上。牛牛想知道最坏情况下,他需要多少步才可以离开这个地牢。 输入描述:每个输入包原创 2017-08-14 08:50:59 · 426 阅读 · 0 评论 -
java面试题:如何求二叉树中节点的最大距离+层序遍历
问题描述:求二叉树中距离最远的两个 节点之间的距离。。class Node{ public int data; public Node left; public Node right; public int leftMaxDistance; public int rightMaxDistance; public Node(int data){ this.data=data;原创 2017-08-21 10:03:57 · 654 阅读 · 0 评论 -
java面试题:数组的常用算法实现
package com.bxh.array;public class ArrayTest { private static int max(int m,int n) { return m>n?m:n; } private static int min(int m, int n) { return m>n?n:m; } //递归查找数组中最大的数 private stati原创 2017-09-02 14:08:51 · 2665 阅读 · 0 评论