El puente azul Copa formación básica árbol --Huffuman

tema Enlace

 


Informe de la resolución de problemas:

1 #include <bits / STDC ++ h.>
 2  usando  espacio de nombres std;
3  struct cmp {
 4      bool  operador () ( int a, int b) {
 5          retorno a> b;
6      }
 7  };
8  int a [ 110 ];
9  int main ()
 10  {
 11      int n, v;
12      priority_queue < int , vector < int >, cmp> Que;
13      cin >> n;
14      para ( int i = 1 ; i <= n; i ++ ) {
 15          cin >> v;
16          que.push (v);
17      }
 18      int suma = 0 ;
19      si (n == 1 ) {
 20          cout << v << endl;
21      } demás {
 22          mientras que (que.size ()! = 1 ) {
 23              int a = que.top ();
24              que.pop ();
25              int b = que.top ();
26             que.pop ();
27              suma + = a + b;
28              que.push (a + b);
29          }
 30          tribunal << suma << endl;
31      }
 32      de retorno  0 ;
33 }
Ver código

 

Supongo que te gusta

Origin www.cnblogs.com/wuliking/p/12670270.html
Recomendado
Clasificación