欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

Java常用數據結構和算法總結

呂致盈1年前8瀏覽0評論

Java是一門廣泛使用的編程語言,數據結構和算法是程序設計的基礎。

下面是Java常用的數據結構和算法。

// 數組排序
int[] arr = {5, 2, 8, 1, 9};
Arrays.sort(arr); // 升序排序
// 字符串長度
String str = "Hello";
int len = str.length();
// 字符串比較
String str1 = "hello";
String str2 = "world";
int cmp = str1.compareTo(str2);
// 鏈表
class ListNode {
int val;
ListNode next;
ListNode(int x) { val = x; }
}
ListNode l1 = new ListNode(1);
l1.next = new ListNode(2);
l1.next.next = new ListNode(3);
// 棧
Stackstack = new Stack<>();
stack.push(1);
stack.push(2);
int top = stack.peek();
// 隊列
Queuequeue = new LinkedList<>();
queue.offer(1);
queue.offer(2);
int front = queue.peek();
queue.poll();
// 二叉樹
class TreeNode {
int val;
TreeNode left;
TreeNode right;
TreeNode(int x) { val = x; }
}
// 遞歸遍歷二叉樹
void traverse(TreeNode node) {
if (node == null) return;
traverse(node.left);
traverse(node.right);
}
// 哈希表
Mapmap = new HashMap<>();
map.put("apple", 1);
map.put("banana", 2);
int val = map.get("apple");
// 排列組合
List>res = new ArrayList<>();
void backtrack(int[] nums, Listtrack) {
if (track.size() == nums.length) {
res.add(new ArrayList<>(track));
return;
}
for (int i = 0; i< nums.length; i++) {
if (track.contains(nums[i])) continue;
track.add(nums[i]);
backtrack(nums, track);
track.remove(track.size() - 1);
}
}

以上是Java中常用的一些數據結構和算法,掌握它們的使用可以大大提升程序的運行效率。