#遍历框架
针对基础的数组和链表结构进行遍历
数组遍历框架,典型的线性迭代结构
public void traverse(String[] args){
for(int i = 0;i<args.length;i++){
...
}
}
链表遍历框架,兼具迭代和递归结构
class ListNode{
int val;
ListNode next;
}
//递归结构
public void traverse(ListNode head){
traversr(head.next);
}
//迭代结构
public void traverse(ListNode head){
for(ListNode node = head;node!=null;node = node.next){
...
}
}
二叉树遍历结构,典型的非线性递归遍历结构
class TreeNode{
int val;
TreeNode left,right;
}
public void traverse(TreenNode head){
traverse(head.left);
traverse(head.right);
}
N叉树的遍历框架
class TreeNode{
int val;
TreeNode[] childNode;
}
public void traverse(TreeNode head){
for(TreeNode node:head.childNode){
traverse(node);
}
}