-
Data: 2009-05-29 13:58:23
Temat: Re: Przekrój przedziałów
Od: Michoo <m...@v...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Wojciech "Spook" Sura pisze:
> Witam!
>
> W jaki sposób najszybciej (włączając w to assemblera) znaleźć przekrój dwóch
> przedziałów?
>
> Formalnie: Niech [A, B] i [C, D] będą dwoma domkniętymi przedziałami takimi,
> że A, B, C, D : integer. Szukany jest największy przedział [E, F] taki, że
> [E, F] zawiera się zarówno w [A, B] jak i w [C, D].
>
> Zapis przedziałów może być dowolny, ale możemy przyjąć, że jest to:
>
> type TRange = record
> Left, Right : integer;
> end;
>
> Mój pomysł jest taki:
>
> function Intersection(RangeA, RangeB : TRange; ResultIntersection : TRange)
> : boolean;
>
> begin
> ResultIntersection.left:=max(RangeA.left, RangeB.left);
> ResultIntersection.right:=min(RangeA.right, RangeB.right);
> result:=(ResultIntersection.left<=ResultIntersection
.right);
> end;
>
> Czy da się szybciej?
Asembler raczej nie da Ci tu specjalnej wydajności. Jedno co może
_odrobinę_ pomóc to pozbycie się wywołania min/max na rzecz if-else. I
ewentualnie pozbycie się wywołania samego Intersection (delphi obsługuje
funkcje inline albo makra?).
--
Pozdrawiam
Michoo
Najnowsze wątki z tej grupy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- 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??
Najnowsze wątki
- 2025-03-16 silnik-chwilówka
- 2025-03-16 Prokurator Wrzosek "Bezstronna" nie przyczynia się do śmierci (dowodnie) - oświadcza bodnatura [Dwie Kacze Wieże]
- 2025-03-15 kraje nieprzyjazne samochodom
- 2025-03-15 parking Auchan
- 2025-03-15 Art. 19.1 ustawy o ochronie praw autorskich
- 2025-03-15 przegląd za mną
- 2025-03-15 Na co komu okna
- 2025-03-15 Mój elektryk
- 2025-03-15 Fejk muzyczny czy nie fejk
- 2025-03-15 China-Kraków => Senior PHP Symfony Developer <=
- 2025-03-15 Wrocław => Konsultant wdrożeniowy Comarch XL (Logistyka, WMS, Produk
- 2025-03-15 Błonie => Analityk Systemów Informatycznych (TMS SPEED) <=
- 2025-03-15 Warszawa => Senior Frontend Developer (React + React Native) <=
- 2025-03-15 Warszawa => Java Full Stack Developer (Angular2+ experience) <=
- 2025-03-15 Warszawa => Java Full Stack Developer (Angular2+) <=