真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

怎么用VBS模擬二叉樹-創(chuàng)新互聯(lián)

這篇文章給大家分享的是有關(guān)怎么用VBS模擬二叉樹的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過來看看吧。

創(chuàng)新互聯(lián)公司專注于企業(yè)營(yíng)銷型網(wǎng)站建設(shè)、網(wǎng)站重做改版、姚安網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5開發(fā)、購(gòu)物商城網(wǎng)站建設(shè)、集團(tuán)公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為姚安等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。

數(shù)據(jù)結(jié)構(gòu)知識(shí):

二叉樹中序便歷可以用來做排序

而VBS里面恰恰就沒有現(xiàn)成的排序方法,因此我寫了一個(gè)用VBS的二叉樹,來解決排序問題,中序便歷就是排序。大家可以參考原理,應(yīng)用到自己的程序中。


 class node
 public data
 public Lnode
 public Rnode
 sub insert(newData)

  if newData   if IsEmpty(Lnode) then
    set Lnode=new node
    Lnode.data = newData
   else
    Lnode.insert newData
   end if
  else
   if IsEmpty(Rnode) then
    set Rnode=new node
    Rnode.data = newData
   else
    Rnode.insert newData
   end if
  end if
 end sub
 end class

class tree
 public root

 sub insertNode(newData)
  if IsEmpty(root) then
   set root=new node
   root.data=newData
   else
   root.insert newData
  end if
 end sub

 sub preOrderTraversal'前序便歷
  preOrder root
  document.write "
"
 end sub
 sub inOrderTraversal '中序便歷
  inOrder root
  document.write "
"
 end sub
 sub postOrderTraversal'后序便歷
  postOrder root
  document.write "
"
 end sub

 Private sub preOrder(N)
  if IsEmpty(N) then exit sub
  document.write " " & N.data
  preOrder N.Lnode
  preOrder N.Rnode  
 end sub
 Private sub inOrder(N)
  if IsEmpty(N) then exit sub
  inOrder N.Lnode
  document.write " " & N.data  
  inOrder N.Rnode   
 end sub
 Private sub postOrder(N)
  if IsEmpty(N) then exit sub
  postOrder N.Lnode    
  postOrder N.Rnode
  document.write " " & N.data   
 end sub
end class
'調(diào)用示例

set T=new tree

document.write  "插入節(jié)點(diǎn)"
arr=array(39,69,94,47,50,72,55,41,97,73)
for i=0 to 9
 document.write " " & arr(i)
 T.insertNode  arr(i) 
next
document.write "
"
document.write  "前序便歷"
T.preOrderTraversal 
document.write  "中序便歷"
T.inOrderTraversal
document.write  "后序便歷"
T.postOrderTraversal 
 

 

插入節(jié)點(diǎn) 39 69 94 47 50 72 55 41 97 73
前序便歷 39 69 47 41 50 55 94 72 73 97
中序便歷 39 41 47 50 55 69 72 73 94 97
后序便歷 41 55 50 47 73 72 97 94 69 39

改寫成sort(arr)函數(shù) 

 
 class node
 public data
 public Lnode
 public Rnode
 sub insert(newData)

  if newData   if IsEmpty(Lnode) then
    set Lnode=new node
    Lnode.data = newData
   else
    Lnode.insert newData
   end if
  else
   if IsEmpty(Rnode) then
    set Rnode=new node
    Rnode.data = newData
   else
    Rnode.insert newData
   end if
  end if
 end sub
 end class

class tree
 public root 
 public Arr
 private index
 sub insertNode(newData)
  if IsEmpty(root) then
   set root=new node
   root.data=newData
   index=0
   else
   root.insert newData
  end if
 end sub

 sub inOrderTraversal '中序便歷
  inOrder root   
 end sub
 Private sub inOrder(N)
  if IsEmpty(N) then exit sub
  inOrder N.Lnode
  Arr(index)= N.data 
  index=index+1
  inOrder N.Rnode   
 end sub

end class

function sort(arr)
 set T=new tree
 T.Arr=arr
 for each a in arr 
  T.insertNode  a 
 next 
 T.inOrderTraversal 
 sort=T.Arr
end function
 '-------以上是sort函數(shù)部分------
 '-------以下是調(diào)用示例------
 '隨便一個(gè)數(shù)組
arr=array(39,69,94,47,50,72,55,41,97,73)
 '顯示數(shù)組內(nèi)容
for each a in arr 
  document.write  a & " "
next
document.write  "

 '排序處理
arr=sort(arr)
 '顯示排序后的結(jié)果
for each a in arr 
  document.write  a & " "
next
 

輸出結(jié)果:

39 69 94 47 50 72 55 41 97 73 
39 41 47 50 55 69 72 73 94 97


感謝各位的閱讀!關(guān)于“怎么用VBS模擬二叉樹”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!


分享標(biāo)題:怎么用VBS模擬二叉樹-創(chuàng)新互聯(lián)
本文網(wǎng)址:http://weahome.cn/article/dodgeo.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部