algorytm.org

Kolejka

Baza Wiedzy
wersja offline serwisu przeznaczona na urządzenia z systemem Android
Darowizny
darowiznaWspomóż rozwój serwisu
Nagłówki RSS
Artykuły
Implementacje
Komentarze
Forum
Bookmarki






Sonda
Implementacji w jakim języku programowania poszukujesz?

Kolejka
Ocena użytkowników:***** / 40
SłabyŚwietny 
Wpisany przez Michał Knasiecki, 01 sierpnia 2005 22:56

Kolejka jest strukturą liniowo uporządkowanych danych w której dołączać nowe dane można jedynie na koniec kolejki a usuwać z początku. Procedura usunięcia danych z końca kolejki jest taka sama, jak w przypadku stosu, z tą różnicą, że usuwamy dane od początku a nie od końca.
Pierwszy element (a dokładniej wskaźnik do jego miejsca w pamięci) musi zostać zapamiętany, by możliwe było usuwanie pierwszego elementu w czasie stałym O(1). Gdybyśmy tego nie zrobili, aby dotrzeć do pierwszego elementu należałoby przejść wszystkie od elementu aktualnego (czyli ostatniego), co wymaga czasu O(n).
Działanie na kolejce jest intuicyjnie jasne, gdy skojarzymy ją z kolejką ludzi np. w sklepie. Każdy nowy klient staje na jej końcu, obsługa odbywa się jedynie na początku.
Schemat kolejki wygląda następująco:
Kolejka

Przykład w JavaScript:
Obraz kolejki:

Implementacje
AutorJęzyk
programowania
KomentarzOtwórzPobierzOcena
Kamil DworakC#Visual Studio 2008
.cs
.cs
***** / 10
Michał KnasieckiC/C++
.cpp
.cpp
***** / 13
MarianC/C++C++ z użyciem struktury jednokierunkowej
.cpp
.cpp
***** / 16
MarianC/C++C++ z użyciem struktury dwukierunkowej
.cpp
.cpp
***** / 6
Kamil DworakJavaJDK 1.6
.java
.java
***** / 3
Tomasz LubińskiJavaScript
.js
.js
***** / 3
Jakub KoniecznyPython
.py
.py
***** / 4
 
Dodaj własną implementację tego algorytmu
  • Zaloguj się na stronie
Plik:
Język
programowania:
Komentarz:
  By móc dodać implementacje zaloguj się na stronie

Poprawiony: 29 października 2012 11:05
Dodaj komentarz