当前位置: 首页>>代码示例>>C++>>正文


C++ MinHeap::Length方法代码示例

本文整理汇总了C++中MinHeap::Length方法的典型用法代码示例。如果您正苦于以下问题:C++ MinHeap::Length方法的具体用法?C++ MinHeap::Length怎么用?C++ MinHeap::Length使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在MinHeap的用法示例。


在下文中一共展示了MinHeap::Length方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: while

 HuffmanTree::HuffmanTree()
 {
     MinHeap<HufTreeNodePtr> M;
     int calcu[26]={0};//0->a
     HufTreeNode *p;
     HufTreeNodePtr ptr;
     char c[100];
     cout<<"请输入以#结尾的一串小写英文序列"<<endl;
     cin>>c;
     int i=0;
     while (c[i]!='#')
     {
         calcu[c[i]-'a']++;
         i++;
     }
     for (int i=0;i<26;i++)
     {
         if (calcu[i]==0) continue;
         cout<<calcu[i]<<' '<<(char)('a'+i)<<endl;/////////////////////////////////
         p=new HufTreeNode(calcu[i],'a'+i);
         ptr.p=p;
         M.Put(ptr);
     }
     HufTreeNodePtr ptra,ptrb;
     while (M.Length()>1)
     {
         ptrb=M.Remove();
         ptra=M.Remove();
         ptr.p=new HufTreeNode(ptra.p->weight+ptrb.p->weight);
         ptr.p->leftChild=ptra.p;
         ptr.p->rightChild=ptrb.p;
         M.Put(ptr);
     }
     root=M.Front().p;
 }
开发者ID:WolfForMoon,项目名称:Local-C-Code,代码行数:35,代码来源:main.cpp


注:本文中的MinHeap::Length方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。