给定一个字符类型数组chas[] 判断chas中所有字符是否都只出现过一次 要求: 1.时间复杂度保证为N 2.实现额外空间复杂度为 1,尽量降低时间复杂度 分析: 1),通常排序的做法可以做到时间复杂度为N,只是遍历一遍数组,一般而言,空间复杂度至少为N 2)采用堆排序可以保证额外空间复杂度为1, 什么是堆排序,(涉及大根堆,小根堆)public void heapSort(char[] chas){for(int i = 0; i < chas.length; i++){heapInsert(chas,i);}f...
你需要采用前序遍历的方式,将一个二叉树转换成一个由括号和整数组成的字符串。 空节点则用一对空括号 “()” 表示。而且你需要省略所有不影响字符串与原始二叉树之间的一对一映射关系的空括号对。class Solution {public void tree2strChild(TreeNode t,StringBuilder sb) {if(t == null) return;sb.append(t.val);if(t.left == null) {if(t.right == null) {return;}else{sb.append("()");}}else {sb.append("(");tree2strChild(...