Pada tutorial kali ini Konsep Koding akan berbagi tutorial mengenai Symmetric Tree  pada Binnary Tree, Symmetric Tree sendiri adalah sebuah algoritam untuk menentukan apakah sebuah data yang dimasukan memiliki data yang simetris, jika data yang dimasukan merupakan simetris maka akan di return true, jika tidak maka data akan di return false. 

√ Tutorial Algoritma Symmetric Tree Javascript
Algoritma Symmetric Tre


Diberikan pohon biner, periksa apakah itu cermin dirinya sendiri (yaitu, simetris di sekitar pusatnya).

Misalnya, pohon biner ini [1,2,2,3,4,4,3] simetris:


1
   / \
  2   2
 / \ / \
3  4 4  3


Tutorial Algoritma Symmetric Tree Javascript

/**

 * Definition for a binary tree node.

 * function TreeNode(val, left, right) {

 *     this.val = (val===undefined ? 0 : val)

 *     this.left = (left===undefined ? null : left)

 *     this.right = (right===undefined ? null : right)

 * }

 */

/**

 * @param {TreeNode} root

 * @return {boolean}

 */

var isSymmetric = function(root) {

  if (!root) return true;


  var p = [root.left];

  var q = [root.right];

  var ll = null;

  var rr = null;


  while (p.length && q.length) {

    ll = p.pop();

    rr = q.pop();


    if (!ll && !rr) continue;

    if (!ll || !rr) return false;

    if (ll.val !== rr.val) return false;


    p.push(ll.left);

    p.push(ll.right);

    q.push(rr.right);

    q.push(rr.left);

  }


  return true;

};


Sekian semoga Tutorial Algoritma Symmetric Tree Javascript dapat bermanfaat dan membantu kamu yang sedang mempelajari Algoritma dan Struktur Data pada Bahasa Pemrograman Javascipt.


Baca Juga