java笔试题(一)

1.回文数Palindrome Number

判断一个整数是佛是回文数,回文数是指正序(从左到右)和倒序(从右到左)读都是一样的整数。
示例1:
输入:121 输出:true
示例2:
输入:-121 输出:false
解释:从左到友读,为-121,从右到左读,为121-。因此它不是一个回文数。
示例3:
输入:10 输出:false
解释:从左到右读,为10,从右到左读,为01,因此它不是一个回文数。

2.最长公共前缀 Longest Common Prefix

编写一个函数来吓着字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串“”。
示例1:
输入:["flower","flow","flight"] 输出:"fl"
示例2:
输入:["dog","racecar","car"] 输出:""
解释:输入不存在公共前缀。
说明:所有输入只包含小写字母a-z。

3.合并两个有序链表 Merge Two Sorted Lists

将两个有序链表合并为一个新的有序链表并返回。
新链表是通过拼接给定的两个链表的所有节点组成的。
示例:
输入:1->2->4,1->3->4
输出:
1->1->2->3->4->4

4.最后一个单词长度Length Of Last Word

给定一个仅包含大小写字母和空格的字符串,返回其最后一个单词的长度。
如果不存在最后一个单词,请返回0。
说明:一个单词是指由字母组成,但不包含任何空格的字符串。

5.删除链表的倒数第N个节点 Remove Nth Node From End Of list

给定一个链表,删除链表的倒数第N个节点,并且返回链表的头结点。
示例:
给定一个链表:1->2->3->4->5,和n=2,
当删除了倒数第2个节点后,链表变为1->2->3->5
说明:给定的n保证是有效的。

6.三数之和 3Sum

给定一个包含N个证书的数组nums,判断nums中是否存在三个元素a.b.c.是的a+b+c=0?
找出所有满足条件且不重复的三元组。
注意:答案中不可以包含重复的三元组。
例如,戈丁数组nums={-1,0,1,2,-1,-4},满足要求的三元组集合为:
{-1,0,1};{-1,-1,2}

7.无重复字符的最长串 Longest SubString Without Repeating Char

给定一个按照升序排列的整数数组Nums,和一个目标值target,找出给定目标值在数组中的
开始位置和借宿位置。
你的算法时间复杂度必须是O(logn)级别。
如果数组中不存在目标值,返回[-1,-1].
示例1:
输入:nums = [5,7,7,8,8,10],target = 8 输出:[3,4]
示例2:
输入:nums=[5,7,7,8,8,10],target=6 输出:[-1,-1]

8.缺失的第一个整数 First Missing Positive

给定一个未排序的整数数组,找出气壮没有出现的最小的正整数。
示例1:
输入:[1,2,0] 输出:3
示例2:
输入:[3,4,-1,1] 输出:2
示例3:
输入:[7,8,9,11,12] 输出:1

9.跳跃游戏Jump Game

给定一个非负数整数数组,你最初位于数组的第一个位置。书注重的每个元素代表你在
该位置可以跳跃的最大长度。
你的目标是使用最少的跳跃次数到达数组的最后一个位置。
示例:
输入:[2,3,1,1,4] 输出:2
解释:跳到最后一个位置的最小跳跃数是2.
从下标为0跳到下标为1的位,跳一步,然后跳3步到达数组的最后一个位置。
说明:假设你总是可以到达数组的最后一个位置。

你可能感兴趣的:(java笔试题(一))