百度java面试题(代码示例)

qianduancss

温馨提示:这篇文章已超过283天没有更新,请注意相关的内容是否还可用!

百度java面试题(代码示例)

百度Java面试题中可能会涉及到许多不同的主题,例如数据结构、算法、多线程等。在这里,我以一个关于字符串的面试题为例进行讲解。

面试题:给定一个字符串,判断该字符串是否是回文字符串。

回文字符串是指正向和反向读都一样的字符串。要判断一个字符串是否是回文字符串,我们可以比较字符串的正向和反向读是否相同。

示例代码如下:

public class Palindrome {

public static boolean isPalindrome(String str) {

int left = 0;

int right = str.length() - 1;

while (left < right) {

if (str.charAt(left) != str.charAt(right)) {

return false;

}

left++;

right--;

}

return true;

}

public static void main(String[] args) {

String str1 = "level";

String str2 = "hello";

System.out.println(isPalindrome(str1)); // 输出 true

System.out.println(isPalindrome(str2)); // 输出 false

}

}

在示例代码中,我们定义了一个静态方法 `isPalindrome`,该方法接收一个字符串作为参数。我们使用两个指针 `left` 和 `right` 分别指向字符串的首尾字符。

在 `while` 循环中,我们比较 `left` 和 `right` 指向的字符是否相同。如果不相同,则说明字符串不是回文字符串,我们可以直接返回 `false`。如果相同,则将 `left` 向右移动一位,将 `right` 向左移动一位,继续比较下一对字符。

当 `left` 大于等于 `right` 时,说明已经比较完了字符串的所有字符,且每一对字符都相同,因此可以返回 `true`。

在 `main` 方法中,我们分别传入了一个回文字符串和一个非回文字符串作为参数调用 `isPalindrome` 方法,并打印结果。结果表明,第一个字符串是回文字符串,而第二个字符串不是回文字符串。

通过这个例子,我们可以看到,通过比较字符串的正向和反向读是否相同,我们可以判断一个字符串是否是回文字符串。这是一种常见的字符串问题,在面试中也可能会被提到。

文章版权声明:除非注明,否则均为莫宇前端原创文章,转载或复制请以超链接形式并注明出处。

取消
微信二维码
微信二维码
支付宝二维码