-
Data: 2012-02-22 12:20:15
Temat: Re: Taki problem programistyczny...
Od: bartekltg <b...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu 2012-02-21 22:52, A.L. pisze:
> Od niejakiego czasu zaprzata mnie nastepujacy problem:
>
> Dany jest skierowany graf acykliczny. Jak wiadomo, taki graf mozna
> posortowac topologicznie. Takich porzadkow topologicznych jest
> olbrzymia ilosc.
>
> I teraz problem:
>
> 1. W praktycznych zadaniach ten graf moze byc bardzo duzy - setki
> tysiecy wezlow
> 2. Graf nie musi byc spojny
> 3. Dane jest uporzadkowanie topologiczne, jedno z mozliwych
> 4. Chce sie zmienic polozenie N wezlow w tym porzadku, gdzie N jest
> nieduze (kilka). Wezly sa wybrane przypadkowo
>
> Pytanie:
>
> 1. Czy ta zmiana polozenia N wezlow narusza uporzadkowanie
> topologiczne, to znaczy czy po przestawieniu otrzymamy znow porzadek
> topologiczny czy nie
> 2. Takie sprawdzenie musi byc EXTREMALNIE wydajne, bo powtarzane jest
> miliony razy, a program musi sie wykonywac bardzo szybko.
>
> Oczywiscie, "brute force" jest trywialne. Ale "nie brute force"
Rozumiem, że brute force to przejście od naszych N przesuwanych
wierzchołków krawędziami w przód i w tył (ok, trzeba mieć
krawedzie wstaczne) i sprawdzenie, czy nie odwróciliśmy
kierunku w porządku.
> niekoniecznie jest trywialne. Tyle ze "brute force" strasznie dlugo
> sie wykonuje, nawet przy maksymalnej optymalizacji kodu
>
> Rzecz potrzebna w pewnych algorytmach "constraint programming"
> zwiazanymi z planowaniem kalendarzowym i routingiem. Dopuszczalny jest
> "preprocessing" grafu w celu utworzenia struktur danych
> przyspieszajacych proces. Pamiec nie jest ograniczeniem.
>
> Jak ktos nie ma nad czym myslec, to proponuje nad tym
Ciężko będzie szybciej:) Mam coś, co samo sprawdzenie robi
w O(N) + sprawdzenie czy w nasze N wierzchołkow jest ok,
ale potem i tak trzeba 'poprawić dane' we wszystkich
wierzchołkach z którymi styka się zbiór N. Więc
jeśli nie wpadne, jak ro zrobić 'leniwie' wychodzi
to samo co BF powyżej. (Trzymam listę krawędzi
posortowaną po pozycjach w porządku. Sprawdzenie
czy przesuniecie wierzchołka zachowuje porzadek
jest natychmiastowe, ale trzeba jeszcze rozpropagować
informacje o zmianie swojej pozycji).
pzdr
bartekltg
Następne wpisy z tego wątku
- 22.02.12 14:52 A.L.
- 22.02.12 15:04 A.L.
- 22.02.12 18:03 Piotr Chamera
- 22.02.12 19:21 Piotr Chamera
- 22.02.12 23:24 n...@m...invalid
- 23.02.12 07:55 Piotr Chamera
- 23.02.12 10:47 Piotr Chamera
- 23.02.12 19:23 A.L.
- 23.02.12 23:14 Piotr Chamera
- 24.02.12 14:01 A.L.
- 24.02.12 16:37 Piotr Chamera
Najnowsze wątki z tej grupy
- "Wuj dobra rada" z KDAB rozważa: Choosing the Right Programming Language for Your Embedded Linux Device
- Nowa ustawa o ochronie praw autorskich - opis problemu i szkic ustawy
- 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?
Najnowsze wątki
- 2025-03-29 Re: Kompensacja mocy biernej przy 230VAC
- 2025-03-29 Ostrów Wielkopolski => Konsultant Wdrożeniowy Comarch XL/Optima (Ksi
- 2025-03-29 Łożysko ślizgowe - jaki olej
- 2025-03-29 Re: Kompensacja mocy biernej przy 230VAC
- 2025-03-29 Warszawa => NMS System Administrator <=
- 2025-03-29 Warszawa => Laravel PHP Developer <=
- 2025-03-29 Re: Kompensacja mocy biernej przy 230VAC
- 2025-03-29 Warszawa => Java Full Stack Developer (Angular2+) <=
- 2025-03-29 Warszawa => Specjalista rekrutacji IT <=
- 2025-03-28 A gdyby to był elektryk?
- 2025-03-28 Współczesny falomierz
- 2025-03-28 Rzeszów => WEBCON Developer <=
- 2025-03-28 Szczecin => Specjalista ds. public relations <=
- 2025-03-28 Warszawa => Staż w dziale Sprzedaży B2B <=
- 2025-03-28 Warszawa => MENA New Business Manager <=