Javascript實(shí)現(xiàn)從小到大的數(shù)組轉(zhuǎn)換成二叉搜索樹(shù)
廢話不多說(shuō)了,直接給大家貼代碼了,具體代碼如下所示:
var Array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; var Tree = createTree(Array); console.log(Tree); // 構(gòu)造一個(gè)節(jié)點(diǎn) function Node(nodeData, leftData, rightData) { this.nodeData = nodeData; this.leftData = leftData; this.rightData = rightData; } // 每次取中點(diǎn)作為根節(jié)點(diǎn),向左和向右遞歸 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; } }
以上所述是小編給大家介紹的Javascript實(shí)現(xiàn)從小到大的數(shù)組轉(zhuǎn)換成二叉搜索樹(shù),希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
javascript中eval和with用法實(shí)例總結(jié)
這篇文章主要介紹了javascript中eval和with用法,結(jié)合實(shí)例形式總結(jié)分析了JavaScript中eval和with的功能、用法與相關(guān)注意事項(xiàng),具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-11-11微信小程序中的canvas 文字?jǐn)嘈泻褪÷蕴?hào)顯示功能的處理方法
大家都知道在canvas中沒(méi)有提供方法來(lái)處理文字的多行問(wèn)題,只有通過(guò)截取指定字符串來(lái)達(dá)到目的。接下來(lái)通過(guò)本文給大家介紹微信小程序中的canvas 文字?jǐn)嘈泻褪÷蕴?hào)顯示功能 ,需要的朋友可以參考下2018-11-11javascript仿php的print_r函數(shù)輸出json數(shù)據(jù)
輸出json數(shù)據(jù),php的print_r函數(shù)可以輕松實(shí)現(xiàn),下面為大家介紹下javascript也可以模仿print_r函數(shù)輸出json數(shù)據(jù),具體實(shí)現(xiàn)如下,感興趣的朋友可以了解下2013-09-0910行原生JS實(shí)現(xiàn)文字無(wú)縫滾動(dòng)(超簡(jiǎn)單)
下面小編就為大家分享一篇10行原生JS實(shí)現(xiàn)文字無(wú)縫滾動(dòng)的效果,特別簡(jiǎn)單,具有很好的參考價(jià)值,希望對(duì)大家有所幫助2018-01-01swiper+echarts實(shí)現(xiàn)多個(gè)儀表盤左右滾動(dòng)效果
這篇文章主要為大家詳細(xì)介紹了swiper+echarts實(shí)現(xiàn)多個(gè)儀表盤左右滾動(dòng)效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-06-06