fork download
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <deque>
  4. #include <algorithm>
  5.  
  6. using namespace std;
  7.  
  8. struct huffman{
  9. int freq;
  10. int index;
  11. huffman *left;
  12. huffman *right;
  13. };
  14. huffman *temp;
  15. deque<huffman *> littleTree;
  16.  
  17. bool compare(huffman *a, huffman *b) {
  18. return a->freq<b->freq;
  19. }
  20.  
  21.  
  22. int main() {
  23.  
  24. int n, i;
  25. int f[101];
  26.  
  27. scanf("%d",&n);
  28.  
  29. //輸入頻率 把每個頻率都建成一個節點
  30. /* freq
  31.   / \
  32.   NULL NULL
  33.   */
  34. for (i=1; i<=n; i++) {
  35. scanf("%d",&f[i]);
  36. temp=new huffman;
  37. temp->freq=f[i];
  38. temp->index=i;
  39. temp->left=NULL;
  40. temp->right=NULL;
  41. littleTree.push_back(temp);
  42. }
  43. //排序後把兩個最小的取出來 合併成一個新節點
  44. for (i=1; i<=n-1; i++) {
  45. sort(littleTree.begin(), littleTree.end(), compare);
  46. temp=new huffman;
  47. temp->freq=littleTree[0]->freq+littleTree[1]->freq;
  48. temp->index=0;
  49. temp->left=littleTree[0];
  50. temp->right=littleTree[1];
  51. littleTree.pop_front();
  52. littleTree.pop_front();
  53. littleTree.push_back(temp);
  54. }//huffman tree = littleTree[0]
  55.  
  56. printf("%d\n",n);
  57.  
  58. //輸出 huffman code
  59. return 0;
  60. }
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
Main.java:1: error: illegal character: '#'
#include <stdio.h>
^
Main.java:1: error: class, interface, or enum expected
#include <stdio.h>
         ^
Main.java:2: error: illegal character: '#'
#include <stdlib.h>
^
Main.java:3: error: illegal character: '#'
#include <deque>
^
Main.java:4: error: illegal character: '#'
#include <algorithm>
^
Main.java:8: error: class, interface, or enum expected
struct huffman{
^
Main.java:10: error: class, interface, or enum expected
    int index;
    ^
Main.java:11: error: class, interface, or enum expected
    huffman *left;
    ^
Main.java:12: error: class, interface, or enum expected
    huffman *right;
    ^
Main.java:13: error: class, interface, or enum expected
};
^
Main.java:14: error: class, interface, or enum expected
huffman *temp;
^
Main.java:15: error: class, interface, or enum expected
deque<huffman *> littleTree;
^
Main.java:17: error: class, interface, or enum expected
bool compare(huffman *a, huffman *b) {
^
Main.java:19: error: class, interface, or enum expected
}
^
Main.java:25: error: class, interface, or enum expected
    int f[101];
    ^
Main.java:27: error: class, interface, or enum expected
    scanf("%d",&n);
    ^
Main.java:34: error: class, interface, or enum expected
    for (i=1; i<=n; i++) {
    ^
Main.java:34: error: class, interface, or enum expected
    for (i=1; i<=n; i++) {
              ^
Main.java:34: error: class, interface, or enum expected
    for (i=1; i<=n; i++) {
                    ^
Main.java:36: error: class, interface, or enum expected
        temp=new huffman;
        ^
Main.java:37: error: class, interface, or enum expected
        temp->freq=f[i];
        ^
Main.java:38: error: class, interface, or enum expected
        temp->index=i;
        ^
Main.java:39: error: class, interface, or enum expected
        temp->left=NULL;
        ^
Main.java:40: error: class, interface, or enum expected
        temp->right=NULL;
        ^
Main.java:41: error: class, interface, or enum expected
        littleTree.push_back(temp);
        ^
Main.java:42: error: class, interface, or enum expected
    }
    ^
Main.java:44: error: class, interface, or enum expected
    for (i=1; i<=n-1; i++) {
              ^
Main.java:44: error: class, interface, or enum expected
    for (i=1; i<=n-1; i++) {
                      ^
Main.java:46: error: class, interface, or enum expected
        temp=new huffman;
        ^
Main.java:47: error: class, interface, or enum expected
        temp->freq=littleTree[0]->freq+littleTree[1]->freq;
        ^
Main.java:48: error: class, interface, or enum expected
        temp->index=0;
        ^
Main.java:49: error: class, interface, or enum expected
        temp->left=littleTree[0];
        ^
Main.java:50: error: class, interface, or enum expected
        temp->right=littleTree[1];
        ^
Main.java:51: error: class, interface, or enum expected
        littleTree.pop_front();
        ^
Main.java:52: error: class, interface, or enum expected
        littleTree.pop_front();
        ^
Main.java:53: error: class, interface, or enum expected
        littleTree.push_back(temp);
        ^
Main.java:54: error: class, interface, or enum expected
    }//huffman tree = littleTree[0]
    ^
Main.java:59: error: class, interface, or enum expected
    return 0;
    ^
Main.java:60: error: class, interface, or enum expected
}
^
39 errors
stdout
Standard output is empty