Java程序設(shè)計(jì)試題和答案
以下是一些Java程序設(shè)計(jì)的試題和答案,希望對(duì)想要學(xué)習(xí)Java編程的初學(xué)者有所幫助。
試題1:
已知一個(gè)字符串str,編寫一個(gè)Java函數(shù),尋找其中第一個(gè)不重復(fù)的字符并返回其下標(biāo)。
答案1:
public static int findFirstNonRepeatChar(String str) { Mapmap = new HashMap<>(); for (int i = 0; i< str.length(); i++) { char ch = str.charAt(i); if (map.containsKey(ch)) { map.put(ch, map.get(ch) + 1); } else { map.put(ch, 1); } } for (int i = 0; i< str.length(); i++) { if (map.get(str.charAt(i)) == 1) { return i; } } return -1; }
試題2:
編寫一個(gè)Java程序,將一個(gè)二叉樹的每個(gè)節(jié)點(diǎn)的值加上它的左右子節(jié)點(diǎn)的值。
答案2:
public class TreeNode { public int val; public TreeNode left, right; public TreeNode(int val) { this.val = val; this.left = null; this.right = null; } } public void addLeftAndRightValues(TreeNode node) { if (node == null) { return; } if (node.left != null) { addLeftAndRightValues(node.left); node.val += node.left.val; } if (node.right != null) { addLeftAndRightValues(node.right); node.val += node.right.val; } }
希望以上Java程序設(shè)計(jì)試題和答案能夠?yàn)槌鯇W(xué)者提供一些幫助,也希望大家多多練習(xí)和思考,深入掌握J(rèn)ava編程。