Article View: pl.comp.lang.perl
Article #52492Re: Perl tablice
From: Anonim Anonimowy
Date: Mon, 24 Dec 2012 00:00
Date: Mon, 24 Dec 2012 00:00
75 lines
4069 bytes
4069 bytes
W dniu poniedziałek, 24 grudnia 2012 00:04:16 UTC+1 użytkownik Stachu 'Dozzie' K. napisał: > On 2012-12-23, Anonim Anonimowy <amkrankruleuen@gmail.com> wrote: > > > W dniu niedziela, 23 grudnia 2012 21:30:16 UTC+1 użytkownik Stachu 'Dozzie' K. napisał: > > >> On 2012-12-23, Anonim Anonimowy <amkrankruleuen@gmail.com> wrote: > > >> > > >> > Witam, czy da się w szybki i wygodny sposób w perlu jakoś określić tablice w ten sposób, aby podać jej maksymalną wielkość, a w momencie gdy dodaje do niej element i jest pełna to żeby nastąpiło przesunięcie elementów w prawo, skasowanie ostatniego i zwolnienie miejsca dla pierwszego (dodanego). > > >> > > >> > > >> > > >> Znak zapytania kończy pytanie. > > >> > > >> > > >> > > >> To, co ty chcesz, przypomina kolejkę FIFO. Nie widziałem jeszcze języka > > >> > > >> ogólnego przeznaczenia, który ma to wbudowane (chyba że w bibliotece > > >> > > >> standardowej). Użyj CPAN albo stwórz sobie własny moduł na podstawie > > >> > > >> Tie::Array. > > > > > Nie, FIFO spełnia zupełnie inną rolę, nie chce, aby pierwszy element > > > na wejściu stawał się pierwszym na wyjściu bo to by nie miało sensu. > > > Problem rozwiązałem w zupełnie inny i szybki sposób korzystając > > > z zakresów, dodaje element na początku, tworzy mi się tablica 101 > > > elementowa, a potem sam robie z niej 100 elementową [0..99]. > > > > A teraz opisz, w jaki sposób się różni twoje rozwiązanie od FIFO. > > > > I wyjaśnij, czemu uważasz przepisywanie za każdym razem wszystkich stu > > elementów (i to dwukrotnie!) za szybkie. > > > > -- > > Secunia non olet. > > Stanislaw Klekot Ty zakładasz, że ja chcę w pewien sposób kolejkować odczytywane elementy, a mi zależy na tablicy którą będę mógł odczytać w dowolny sposób, np. środkowy element w czasie rzeczywistym, zapytałem ogólnie, a nie do konkretnego zastosowania. Po drugie jakie jakie dwukrotne przepisywanie?! Matematyka się kłania... Załóżmy, że mam tablice i wykonam takie operacje: @array = (1..10); @array = @array[0..3]; Gdzie tu dwukrotne przepisanie? Co więcej głowy sobie uciąć nie dam, że perl nie jest wyczulony na tego typu operacje i nie przepisze danych na zupełnie nowe adresy tylko po prostu skróci tablice zamiast całą przepisywać. Moja tablica będzie po prostu z czasem zapełniana elementami, a mi zależy na tym, żeby tych elementów nigdy nie było więcej niż 100, dodanie nowego elementu nie wiąże się z tym, że na pewno w tym samym czasie chce odczytać tablice...
Technical Details
Message-ID:
<6a88da03-9dc7-4dc4-9694-9c11382d552b@googlegroups.com>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!goblin3!goblin.stu.neva.ru!news.ripco.com!news.glorb.com!ee4no1984295qab.0!news-out.google.com!k2ni2110qap.0!nntp.google.com!ee4no1984292qab.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mailReferences:
<afbdca47-192b-4596-ba38-f400620b9a76@googlegroups.com> <slrnkdeqet.ni1.dozzie@jarowit.net> <7e56a750-b82c-4bc8-ae2d-7a96d058573e@googlegroups.com> <slrnkdf3fk.ni1.dozzie@jarowit.net>Show Full Headers
Complete Article Headers
X-Received: by 10.224.218.2 with SMTP id ho2mr10144767qab.8.1356307228274; Sun, 23 Dec 2012 16:00:28 -0800 (PST) Received: by 10.49.75.195 with SMTP id e3mr2986423qew.24.1356307228259; Sun, 23 Dec 2012 16:00:28 -0800 (PST) Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!goblin3!goblin.stu.neva.ru!news.ripco.com!news.glorb.com!ee4no1984295qab.0!news-out.google.com!k2ni2110qap.0!nntp.google.com!ee4no1984292qab.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: pl.comp.lang.perl Date: Sun, 23 Dec 2012 16:00:28 -0800 (PST) In-Reply-To: <slrnkdf3fk.ni1.dozzie@jarowit.net> Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=89.68.246.195; posting-account=0kXzSAoAAABN0cMZaL-bUkffWvYoWZ4h NNTP-Posting-Host: 89.68.246.195 References: <afbdca47-192b-4596-ba38-f400620b9a76@googlegroups.com> <slrnkdeqet.ni1.dozzie@jarowit.net> <7e56a750-b82c-4bc8-ae2d-7a96d058573e@googlegroups.com> <slrnkdf3fk.ni1.dozzie@jarowit.net> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <6a88da03-9dc7-4dc4-9694-9c11382d552b@googlegroups.com> Subject: Re: Perl tablice From: Anonim Anonimowy <amkrankruleuen@gmail.com> Injection-Date: Mon, 24 Dec 2012 00:00:28 +0000 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit