Heim >Web-Frontend >js-Tutorial >Javascript wandelt ein Array von klein nach groß in einen binären Suchbaum um

Javascript wandelt ein Array von klein nach groß in einen binären Suchbaum um

陈政宽~
陈政宽~Original
2017-06-28 12:47:071246Durchsuche

In diesem Artikel wird hauptsächlich Javascript vorgestellt, um die Konvertierung von kleinen in große Arrays in binäre Suchbäume zu implementieren. Freunde in Not können sich auf Folgendes beziehen

Ohne weitere Umschweife werde ich den Code direkt für Sie veröffentlichen:

var Array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; 
var Tree = createTree(Array); 
console.log(Tree); 
// 构造一个节点 
function Node(nodeData, leftData, rightData) { 
  this.nodeData = nodeData; 
  this.leftData = leftData; 
  this.rightData = rightData; 
} 
// 每次取中点作为根节点,向左和向右递归 
function createTree(array) { 
  if (array.length <= 0) { 
    return null; 
  } else { 
    var mid = parseInt(array.length / 2); 
    var node = new Node(array[mid], null, null); 
    var leftArray = array.slice(0 , mid); 
    var rightArray = array.slice(mid + 1 , array.length ); 
    node.leftData = createTree(leftArray); 
    node.rightData = createTree(rightArray); 
    return node; 
  } 
}

Das Obige ist die vom Herausgeber eingeführte Javascript-Implementierung Array in einen binären Suchbaum umwandeln. Ich hoffe, dass es für alle hilfreich ist. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und der Herausgeber wird Ihnen rechtzeitig antworten. Ich möchte mich auch bei Ihnen allen für Ihre Unterstützung der Script House-Website bedanken!

Das obige ist der detaillierte Inhalt vonJavascript wandelt ein Array von klein nach groß in einen binären Suchbaum um. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn