共感で繋がるSNS
GRAVITY(グラビティ) SNS

投稿

たら

たら

// ハフマン木を作成する関数
void make_huff(char characters[], int frequencies[], char char_new[], int freq_new[], int node_count) {
int idx_new = 0;
freq_new[node_count - 2] = frequencies[node_count - 2] + frequencies[node_count - 1];
for (int i = 0; i < node_count - 2; i++) {
char_new[i] = characters[i];
}
char_new[node_count - 2] = 'N';
char_new[node_count - 1] = 'N';

for (int i = 0; i < node_count - 1; i++) {
int min1 = node_count - 2 - i;
int min2 = min1 + 1;

int new_freq = freq_new[min1] + freq_new[min2];
freq_new[min1] = new_freq;

char_new[min1] = 'N'; // 内部ノード
char_new[min2] = 'N';

// 再ソート
sort_count_freq(char_new, freq_new, node_count - 1 - i);
}
}
GRAVITY
GRAVITY33
話題の投稿をみつける
関連検索ワード

// ハフマン木を作成する関数