-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!wsisiz.edu.pl!newsfeed2.atman.pl!newsfe
ed.atman.pl!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-a-01.new
s.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
Newsgroups: pl.comp.programming
From: PK <k...@n...pl>
Subject: Re: sortowanie
References: <jts4oq$l0$1@node1.news.atman.pl>
User-Agent: slrn/0.9.9p1 (Linux)
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Message-ID: <s...@l...localdomain>
Date: 14 Jul 2012 16:31:13 GMT
Lines: 22
Organization: Telekomunikacja Polska
NNTP-Posting-Host: 83.28.67.87
X-Trace: 1342283473 unt-rea-b-01.news.neostrada.pl 1209 83.28.67.87:46782
X-Complaints-To: a...@n...neostrada.pl
Xref: news-archive.icm.edu.pl pl.comp.programming:198468
[ ukryj nagłówki ]On 2012-07-14, identyfikator: 20040501 <N...@g...pl> wrote:
> a może Panowie znają jakiś cwany algorytm sortowania adresów IP? żeby nie
ip: a.b.c.d
x := (a * 256 + b) * 256 + c) * 256 + d
Sortujesz x'sy i odwracasz do formy adresów.
Jakby nie patrzeć: IP to po prostu 32-bitowa liczba binarna.
Chyba że chcesz napisać coś już pod IPv6 (128 bitów). Wtedy najlepiej
podzielić adres na części (tzn. np 4 liczby), co trochę zwiększa
liczbę porównań.
W wariancie ekstremalnym możesz podzielić cały adres na pojedyncze
cyfry (zapisane w wektorze), co jest równoważne porównywaniu stringów.
Musisz tylko powstawiać brakujące zera.
W ogólności jest to metoda koszmarnie wolna, ale warto o niej pamiętać.
pozdrawiam,
PK
Następne wpisy z tego wątku
- 14.07.12 23:19 Maciej Sobczak
- 15.07.12 00:21 PK
- 15.07.12 11:05 slawek
- 15.07.12 11:30 Jordan Szubert
- 15.07.12 15:33 identyfikator: 20040501
- 15.07.12 23:15 Maciej Sobczak
- 15.07.12 23:35 Jordan Szubert
- 16.07.12 00:21 Edek Pienkowski
- 16.07.12 09:45 Maciej Sobczak
- 16.07.12 11:04 fir
- 16.07.12 11:07 AK
- 16.07.12 12:15 AK
- 16.07.12 12:38 fir
- 16.07.12 15:00 Roman W
- 17.07.12 08:05 Paweł Kierski
Najnowsze wątki z tej grupy
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
- Ada 2022 Language Reference Manual to be Published by Springer
- Press Release - AEiC 2023, Ada-Europe Reliable Softw. Technol.
- Ada-Europe - AEiC 2023 early registration deadline approaching
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2023
- Ile cykli zajmuje mnożenie liczb 64-bitowych?
Najnowsze wątki
- 2024-05-26 O co chodzi?
- 2024-05-26 PJ autobus-tramwaj
- 2024-05-26 Renault Trafic i lampka z czerwonym STOP
- 2024-05-26 cena pięciocyfrowa
- 2024-05-26 Re: Jak dobra KE "okrada" złą Rosję "dla Ukrainy"
- 2024-05-25 supercap
- 2024-05-25 Sulzbach => Technischer Rollouter (d/m/w) <=
- 2024-05-25 Warszawa => Senior Account Manager <=
- 2024-05-25 Warszawa => Mid PHP Developer (Laravel) <=
- 2024-05-25 Warszawa => Mid PHP Developer (Laravel) <=
- 2024-05-25 Warszawa => Interactive/Experience Designer <=
- 2024-05-25 Warszawa => Key Account Manager <=
- 2024-05-25 Warszawa => SAP WM Consultant / Execution <=
- 2024-05-25 Warszawa => Key Account Manager <=
- 2024-05-25 Re: znów ten wrocław