Java瀛︿範-娉涘瀷缁煎悎缁冧範
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java瀛︿範-娉涘瀷缁煎悎缁冧範相关的知识,希望对你有一定的参考价值。
鏍囩锛?a href='http://www.mamicode.com/so/1/nbsp' title='nbsp'>nbsp ++ ring util ant page img mamicode return
娉涘瀷鐨勭敤娉曟槸鍦?strong>瀹瑰櫒鍚庨潰娣诲姞<Type>
Type鍙互鏄?strong>绫伙紝鎶借薄绫伙紝鎺ュ彛
娉涘瀷琛ㄧず杩欑瀹瑰櫒锛?span class="strong">鍙兘瀛樻斁<Type>
1.璁捐鏀寔娉涘瀷鐨勪簩鍙夋爲锛屽叿鏈塧dd()锛孖norder()涓簭閬嶅巻鏂规硶
1 package generic; 2 3 import java.util.ArrayList; 4 import java.util.List; 5 6 public class Node<T extends Comparable<T>> { 7 public Node<T> leftNode; 8 public Node<T> rightNode; 9 public T value; 10 11 public void add(T v) { 12 if (value == null) 13 value = v; 14 else { 15 if (v.compareTo(value) < 0) { // 鏂板姞鍏ョ殑鍊兼瘮褰撳墠缁撶偣鐨勫€兼洿灏忥紝鎶婁粬鏀惧埌褰撳墠缁撶偣鐨勫乏缁撶偣 16 if (leftNode == null) { 17 leftNode = new Node<T>(); 18 } 19 leftNode.add(v); 20 } else { 21 if (rightNode == null) { 22 rightNode = new Node<T>(); 23 } 24 rightNode.add(v); 25 } 26 } 27 } 28 29 public List<T> Inorder() { // 涓簭閬嶅巻锛屾湰璐ㄦ槸閫掑綊 30 List<T> values = new ArrayList<T>(); 31 if (leftNode != null) { 32 values.addAll(leftNode.Inorder()); 33 } 34 values.add(value); 35 if (rightNode != null) { 36 values.addAll(rightNode.Inorder()); 37 } 38 return values; 39 } 40 41 public static void main(String[] args) { 42 // 鏀寔娉涘瀷鐨凬ode鏃㈠彲浠ユ敮鎸両nteger锛屼篃鍙互鏀寔Float 43 Node<Integer> root = new Node<>(); 44 for (int i = 0; i < 10; i++) { 45 root.add((int) (Math.round(Math.random() * 100))); 46 } 47 System.out.println(root.Inorder()); 48 49 Node<Float> fRoot = new Node<>(); 50 for (int i = 0; i < 10; i++) { 51 fRoot.add((float) (Math.random() * 100)); 52 } 53 54 System.out.println(fRoot.Inorder()); 55 } 56 }
鏁堟灉鍥撅細
以上是关于Java瀛︿範-娉涘瀷缁煎悎缁冧範的主要内容,如果未能解决你的问题,请参考以下文章