Thread View: pl.comp.lang.c
4 messages
4 total messages
Started by Maciek
Fri, 23 Jun 2023 06:04
kompresja - implementacja algorytmu huffmana
Author: Maciek
Date: Fri, 23 Jun 2023 06:04
Date: Fri, 23 Jun 2023 06:04
32 lines
973 bytes
973 bytes
Cześć. Potrzebuję wskazówki jaki zaimplementować kod huffmana do kompresji plików w c++. Nie chodzi mi o gotowca raczej o wskazówki na przykład na przykładzie ciągu znaków: aaabbbbccccdddefzyy zalożenie każdy znak to 8 bitów Dzięki wielkie za wszystkie porady. Wiem jak może wyglądać drzewo na przykład: {a,b,c,d,e,f,z,y} = 8 a = 000 | 3 b = 001 | 3 c = 010 | 4 d = 011 | 3 e = 100 | 1 f = 101 | 1 z = 110 | 1 y = 111 | 2 czyli drzewo można wyprowdzić tak: 29 / \ 0 / \1 5 24 0 / \ 1 0/ \1 1 4 9 15 0/ \1 0/ \ 1 0 / \ 1 0/ \1 a b c d e f z y praktycznie chciaiłem to wykorzystać i nie wiem co dalej :-).
Re: kompresja - implementacja algorytmu huffmana
Author: Przemek Biernat
Date: Mon, 26 Jun 2023 12:57
Date: Mon, 26 Jun 2023 12:57
35 lines
1029 bytes
1029 bytes
On Friday, June 23, 2023 at 3:04:39 PM UTC+2, Maciek wrote: > Cześć. Potrzebuję wskazówki jaki zaimplementować kod huffmana do kompresji plików w c++. Nie chodzi mi o gotowca raczej o wskazówki > > na przykład na przykładzie ciągu znaków: aaabbbbccccdddefzyy > > zalożenie każdy znak to 8 bitów > > Dzięki wielkie za wszystkie porady. > > Wiem jak może wyglądać drzewo na przykład: > {a,b,c,d,e,f,z,y} = 8 > a = 000 | 3 > b = 001 | 3 > c = 010 | 4 > d = 011 | 3 > e = 100 | 1 > f = 101 | 1 > z = 110 | 1 > y = 111 | 2 > > czyli drzewo można wyprowdzić tak: > 29 > / \ > 0 / \1 > 5 24 > 0 / \ 1 0/ \1 > 1 4 9 15 > 0/ \1 0/ \ 1 0 / \ 1 0/ \1 > a b c d e f z y > > praktycznie chciaiłem to wykorzystać i nie wiem co dalej :-). Wiem ale nie powiem, na to jest patent na cały świat. Hehehe
Re: kompresja - implementacja algorytmu huffmana
Author: =?UTF-8?Q?Wojcie
Date: Tue, 11 Jul 2023 10:56
Date: Tue, 11 Jul 2023 10:56
28 lines
929 bytes
929 bytes
On Friday, June 23, 2023 at 3:04:39 PM UTC+2, Maciek wrote: > Cześć. Potrzebuję wskazówki jaki zaimplementować kod huffmana do kompresji plików w c++. Nie chodzi mi o gotowca raczej o wskazówki > > na przykład na przykładzie ciągu znaków: aaabbbbccccdddefzyy > > zalożenie każdy znak to 8 bitów > > Dzięki wielkie za wszystkie porady. > > Wiem jak może wyglądać drzewo na przykład: > {a,b,c,d,e,f,z,y} = 8 > a = 000 | 3 > b = 001 | 3 > c = 010 | 4 > d = 011 | 3 > e = 100 | 1 > f = 101 | 1 > z = 110 | 1 > y = 111 | 2 To nie jest drzewo Huffmana. Długość kodów Huffmana jest odwrotnie proporcjonalna od prawdopodobieństwa symbolu. Masz na Wikipedii dokłady opis: https://pl.wikipedia.org/wiki/Kodowanie_Huffmana w.
Re: kompresja - implementacja algorytmu huffmana
Author: Maciek
Date: Mon, 27 Nov 2023 12:10
Date: Mon, 27 Nov 2023 12:10
42 lines
1406 bytes
1406 bytes
poniedziałek, 26 czerwca 2023 o 21:57:41 UTC+2 Przemek Biernat napisał(a): > On Friday, June 23, 2023 at 3:04:39 PM UTC+2, Maciek wrote: > > Cześć. Potrzebuję wskazówki jaki zaimplementować kod huffmana do kompresji plików w c++. Nie chodzi mi o gotowca raczej o wskazówki > > > > na przykład na przykładzie ciągu znaków: aaabbbbccccdddefzyy > > > > zalożenie każdy znak to 8 bitów > > > > Dzięki wielkie za wszystkie porady. > > > > Wiem jak może wyglądać drzewo na przykład: > > {a,b,c,d,e,f,z,y} = 8 > > a = 000 | 3 > > b = 001 | 3 > > c = 010 | 4 > > d = 011 | 3 > > e = 100 | 1 > > f = 101 | 1 > > z = 110 | 1 > > y = 111 | 2 > > > > czyli drzewo można wyprowdzić tak: > > 29 > > / \ > > 0 / \1 > > 5 24 > > 0 / \ 1 0/ \1 > > 1 4 9 15 > > 0/ \1 0/ \ 1 0 / \ 1 0/ \1 > > a b c d e f z y > > > > praktycznie chciaiłem to wykorzystać i nie wiem co dalej :-). > Wiem ale nie powiem, na to jest patent na cały świat. Hehehe Nie słyszałem żeby był na to jakiś patent. Ale w porządku, na YT jest trochę materiałów, więc w sumie nieaktualne. Ewentualnie podziel się swoim patentem :).
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads