CINXE.COM
Hakurakenne – Wikipedia
<!DOCTYPE html> <html class="client-nojs" lang="fi" dir="ltr"> <head> <meta charset="UTF-8"> <title>Hakurakenne – Wikipedia</title> <script>(function(){var className="client-js";var cookie=document.cookie.match(/(?:^|; )fiwikimwclientpreferences=([^;]+)/);if(cookie){cookie[1].split('%2C').forEach(function(pref){className=className.replace(new RegExp('(^| )'+pref.replace(/-clientpref-\w+$|[^\w-]+/g,'')+'-clientpref-\\w+( |$)'),'$1'+pref+'$2');});}document.documentElement.className=className;}());RLCONF={"wgBreakFrames":false,"wgSeparatorTransformTable":[",\t."," \t,"],"wgDigitTransformTable":["",""],"wgDefaultDateFormat":"fi normal","wgMonthNames":["","tammikuu","helmikuu","maaliskuu","huhtikuu","toukokuu","kesäkuu","heinäkuu","elokuu","syyskuu","lokakuu","marraskuu","joulukuu"],"wgRequestId":"a4bf18a6-5b14-471c-89b0-3bb94c5b469d","wgCanonicalNamespace":"","wgCanonicalSpecialPageName":false,"wgNamespaceNumber":0,"wgPageName":"Hakurakenne","wgTitle":"Hakurakenne","wgCurRevisionId":22777709,"wgRevisionId":22777709,"wgArticleId":168034,"wgIsArticle":true,"wgIsRedirect":false,"wgAction":"view","wgUserName":null, "wgUserGroups":["*"],"wgCategories":["Tietorakenteet"],"wgPageViewLanguage":"fi","wgPageContentLanguage":"fi","wgPageContentModel":"wikitext","wgRelevantPageName":"Hakurakenne","wgRelevantArticleId":168034,"wgIsProbablyEditable":true,"wgRelevantPageIsProbablyEditable":true,"wgRestrictionEdit":[],"wgRestrictionMove":[],"wgNoticeProject":"wikipedia","wgCiteReferencePreviewsActive":true,"wgFlaggedRevsParams":{"tags":{"accuracy":{"levels":3}}},"wgStableRevisionId":22777709,"wgMediaViewerOnClick":true,"wgMediaViewerEnabledByDefault":true,"wgPopupsFlags":0,"wgVisualEditor":{"pageLanguageCode":"fi","pageLanguageDir":"ltr","pageVariantFallbacks":"fi"},"wgMFDisplayWikibaseDescriptions":{"search":true,"watchlist":true,"tagline":true,"nearby":true},"wgWMESchemaEditAttemptStepOversample":false,"wgWMEPageLength":7000,"wgRelatedArticlesCompat":[],"wgCentralAuthMobileDomain":false,"wgEditSubmitButtonLabelPublish":true,"wgULSPosition":"interlanguage","wgULSisCompactLinksEnabled":true, "wgVector2022LanguageInHeader":false,"wgULSisLanguageSelectorEmpty":false,"wgWikibaseItemId":"Q80585","wgCheckUserClientHintsHeadersJsApi":["brands","architecture","bitness","fullVersionList","mobile","model","platform","platformVersion"],"GEHomepageSuggestedEditsEnableTopics":true,"wgGETopicsMatchModeEnabled":false,"wgGEStructuredTaskRejectionReasonTextInputEnabled":false,"wgGELevelingUpEnabledForUser":false};RLSTATE={"ext.gadget.hidePersonalSandboxEdits":"ready","ext.gadget.fiwiki_flaggedrevs_css_rcfix":"ready","ext.globalCssJs.user.styles":"ready","site.styles":"ready","user.styles":"ready","ext.globalCssJs.user":"ready","user":"ready","user.options":"loading","ext.cite.styles":"ready","ext.pygments":"ready","skins.vector.styles.legacy":"ready","ext.flaggedRevs.basic":"ready","mediawiki.codex.messagebox.styles":"ready","ext.visualEditor.desktopArticleTarget.noscript":"ready","codex-search-styles":"ready","ext.uls.interlanguage":"ready","wikibase.client.init":"ready", "ext.wikimediaBadges":"ready"};RLPAGEMODULES=["ext.cite.ux-enhancements","ext.pygments.view","mediawiki.page.media","site","mediawiki.page.ready","mediawiki.toc","skins.vector.legacy.js","ext.centralNotice.geoIP","ext.centralNotice.startUp","ext.flaggedRevs.advanced","ext.gadget.publicarttablesort","ext.gadget.ViikonKilpailu","ext.gadget.WikiLovesMonunmets","ext.gadget.ProtectionIndicator","ext.gadget.frwiki_infobox_v3","ext.gadget.linkeddata","ext.gadget.perustiedotwikidatassa","ext.urlShortener.toolbar","ext.centralauth.centralautologin","mmv.bootstrap","ext.popups","ext.visualEditor.desktopArticleTarget.init","ext.visualEditor.targetLoader","ext.echo.centralauth","ext.eventLogging","ext.wikimediaEvents","ext.navigationTiming","ext.uls.compactlinks","ext.uls.interface","ext.cx.eventlogging.campaigns","ext.checkUser.clientHints","ext.growthExperiments.SuggestedEditSession","oojs-ui.styles.icons-media","oojs-ui-core.icons","wikibase.sidebar.tracking"];</script> <script>(RLQ=window.RLQ||[]).push(function(){mw.loader.impl(function(){return["user.options@12s5i",function($,jQuery,require,module){mw.user.tokens.set({"patrolToken":"+\\","watchToken":"+\\","csrfToken":"+\\"}); }];});});</script> <link rel="stylesheet" href="/w/load.php?lang=fi&modules=codex-search-styles%7Cext.cite.styles%7Cext.flaggedRevs.basic%7Cext.pygments%2CwikimediaBadges%7Cext.uls.interlanguage%7Cext.visualEditor.desktopArticleTarget.noscript%7Cmediawiki.codex.messagebox.styles%7Cskins.vector.styles.legacy%7Cwikibase.client.init&only=styles&skin=vector"> <script async="" src="/w/load.php?lang=fi&modules=startup&only=scripts&raw=1&skin=vector"></script> <meta name="ResourceLoaderDynamicStyles" content=""> <link rel="stylesheet" href="/w/load.php?lang=fi&modules=ext.gadget.fiwiki_flaggedrevs_css_rcfix%2ChidePersonalSandboxEdits&only=styles&skin=vector"> <link rel="stylesheet" href="/w/load.php?lang=fi&modules=site.styles&only=styles&skin=vector"> <meta name="generator" content="MediaWiki 1.44.0-wmf.4"> <meta name="referrer" content="origin"> <meta name="referrer" content="origin-when-cross-origin"> <meta name="robots" content="max-image-preview:standard"> <meta name="format-detection" content="telephone=no"> <meta property="og:image" content="https://upload.wikimedia.org/wikipedia/commons/thumb/b/b3/Assosiaatiotaulu.svg/1200px-Assosiaatiotaulu.svg.png"> <meta property="og:image:width" content="1200"> <meta property="og:image:height" content="465"> <meta property="og:image" content="https://upload.wikimedia.org/wikipedia/commons/thumb/b/b3/Assosiaatiotaulu.svg/800px-Assosiaatiotaulu.svg.png"> <meta property="og:image:width" content="800"> <meta property="og:image:height" content="310"> <meta property="og:image" content="https://upload.wikimedia.org/wikipedia/commons/thumb/b/b3/Assosiaatiotaulu.svg/640px-Assosiaatiotaulu.svg.png"> <meta property="og:image:width" content="640"> <meta property="og:image:height" content="248"> <meta name="viewport" content="width=1120"> <meta property="og:title" content="Hakurakenne – Wikipedia"> <meta property="og:type" content="website"> <link rel="preconnect" href="//upload.wikimedia.org"> <link rel="alternate" media="only screen and (max-width: 640px)" href="//fi.m.wikipedia.org/wiki/Hakurakenne"> <link rel="alternate" type="application/x-wiki" title="Muokkaa" href="/w/index.php?title=Hakurakenne&action=edit"> <link rel="apple-touch-icon" href="/static/apple-touch/wikipedia.png"> <link rel="icon" href="/static/favicon/wikipedia.ico"> <link rel="search" type="application/opensearchdescription+xml" href="/w/rest.php/v1/search" title="Wikipedia (fi)"> <link rel="EditURI" type="application/rsd+xml" href="//fi.wikipedia.org/w/api.php?action=rsd"> <link rel="canonical" href="https://fi.wikipedia.org/wiki/Hakurakenne"> <link rel="license" href="https://creativecommons.org/licenses/by-sa/4.0/deed.fi"> <link rel="alternate" type="application/atom+xml" title="Wikipedia-Atom-syöte" href="/w/index.php?title=Toiminnot:Tuoreet_muutokset&feed=atom"> <link rel="dns-prefetch" href="//meta.wikimedia.org" /> <link rel="dns-prefetch" href="//login.wikimedia.org"> </head> <body class="skin-vector-legacy mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject mw-editable page-Hakurakenne rootpage-Hakurakenne skin-vector action-view"><div id="mw-page-base" class="noprint"></div> <div id="mw-head-base" class="noprint"></div> <div id="content" class="mw-body" role="main"> <a id="top"></a> <div id="siteNotice"><!-- CentralNotice --></div> <div class="mw-indicators"> </div> <h1 id="firstHeading" class="firstHeading mw-first-heading"><span class="mw-page-title-main">Hakurakenne</span></h1> <div id="bodyContent" class="vector-body"> <div id="siteSub" class="noprint">Wikipediasta</div> <div id="contentSub"><div id="mw-content-subtitle"></div></div> <div id="contentSub2"></div> <div id="jump-to-nav"></div> <a class="mw-jump-link" href="#mw-head">Siirry navigaatioon</a> <a class="mw-jump-link" href="#searchInput">Siirry hakuun</a> <div id="mw-content-text" class="mw-body-content"><div class="mw-content-ltr mw-parser-output" lang="fi" dir="ltr"><p><b>Hakurakenne</b> eli <b>assosiaatiotaulu</b> (<a href="/wiki/Englannin_kieli" title="Englannin kieli">engl.</a> <span lang="en"><i>associative array</i></span>) eli <b>hakemisto</b><sup id="cite_ref-laaksonen_1-0" class="reference"><a href="#cite_note-laaksonen-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup> on <a href="/wiki/Abstrakti_tietotyyppi" title="Abstrakti tietotyyppi">abstrakti tietotyyppi</a>, joka kuvaa avaimia arvoiksi. Kun hakurakenteelle antaa <i>avaimen</i> (esimerkiksi henkilön nimi), se kertoo <i>arvon</i> (puhelinnumero). Sen <a href="/wiki/Rajapinta" class="mw-disambig" title="Rajapinta">rajapinta</a> on tyypillisesti: </p> <ul><li>Set(<i>k</i>, <i>v</i>): merkitse avaimen <i>k</i> arvoksi <i>v</i></li> <li>Lookup(<i>k</i>): hae avaimeen <i>k</i> liitetty arvo</li> <li>Remove(<i>k</i>): poista avain <i>k</i> ja siihen liittyvä arvo</li></ul> <figure class="mw-halign-right" typeof="mw:File/Thumb"><a href="/wiki/Tiedosto:Assosiaatiotaulu.svg" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/b/b3/Assosiaatiotaulu.svg/362px-Assosiaatiotaulu.svg.png" decoding="async" width="362" height="140" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/b/b3/Assosiaatiotaulu.svg/543px-Assosiaatiotaulu.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/b/b3/Assosiaatiotaulu.svg/724px-Assosiaatiotaulu.svg.png 2x" data-file-width="700" data-file-height="271" /></a><figcaption>Puhelinluetteloa mallintavassa assosiaatiotaulussa avaimilla (nimet) pääsee käsiksi arvoihin (puhelinnumerot).</figcaption></figure> <p><a href="/wiki/Taulukko_(tietorakenne)" title="Taulukko (tietorakenne)">Taulukkoa</a> voidaan pitää hakurakenteena, joka sallii avaimiksi vain luonnollisia lukuja. </p><p>Hakurakenteen matemaattinen malli on <a href="/wiki/Funktio" title="Funktio">funktio</a>, jonka määrittely- ja maalijoukko ovat <a href="/wiki/Numeroituva_joukko" title="Numeroituva joukko">numeroituvia</a>. Määrittely- ja maalijoukot vastaavat hakurakenteen avain- ja arvojoukkoja. Assosiaatiotauluja käytetäänkin säilyttämään vaikeasti laskettavan funktion arvoja tietokoneen muistissa. </p> <div id="toc" class="toc" role="navigation" aria-labelledby="mw-toc-heading"><input type="checkbox" role="button" id="toctogglecheckbox" class="toctogglecheckbox" style="display:none" /><div class="toctitle" lang="fi" dir="ltr"><h2 id="mw-toc-heading">Sisällys</h2><span class="toctogglespan"><label class="toctogglelabel" for="toctogglecheckbox"></label></span></div> <ul> <li class="toclevel-1 tocsection-1"><a href="#Toteutus"><span class="tocnumber">1</span> <span class="toctext">Toteutus</span></a></li> <li class="toclevel-1 tocsection-2"><a href="#Tuki_ohjelmointikielissä"><span class="tocnumber">2</span> <span class="toctext">Tuki ohjelmointikielissä</span></a> <ul> <li class="toclevel-2 tocsection-3"><a href="#C++"><span class="tocnumber">2.1</span> <span class="toctext">C++</span></a></li> <li class="toclevel-2 tocsection-4"><a href="#Lua"><span class="tocnumber">2.2</span> <span class="toctext">Lua</span></a></li> <li class="toclevel-2 tocsection-5"><a href="#Python"><span class="tocnumber">2.3</span> <span class="toctext">Python</span></a></li> </ul> </li> <li class="toclevel-1 tocsection-6"><a href="#Katso_myös"><span class="tocnumber">3</span> <span class="toctext">Katso myös</span></a> <ul> <li class="toclevel-2 tocsection-7"><a href="#Muita_abstrakteja_tietotyyppejä"><span class="tocnumber">3.1</span> <span class="toctext">Muita abstrakteja tietotyyppejä</span></a></li> </ul> </li> <li class="toclevel-1 tocsection-8"><a href="#Lähteet"><span class="tocnumber">4</span> <span class="toctext">Lähteet</span></a> <ul> <li class="toclevel-2 tocsection-9"><a href="#Viitteet"><span class="tocnumber">4.1</span> <span class="toctext">Viitteet</span></a></li> </ul> </li> <li class="toclevel-1 tocsection-10"><a href="#Aiheesta_muualla"><span class="tocnumber">5</span> <span class="toctext">Aiheesta muualla</span></a></li> </ul> </div> <div class="mw-heading mw-heading2"><h2 id="Toteutus">Toteutus</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Hakurakenne&veaction=edit&section=1" title="Muokkaa osiota Toteutus" class="mw-editsection-visualeditor"><span>muokkaa</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Hakurakenne&action=edit&section=1" title="Muokkaa osion lähdekoodia: Toteutus"><span>muokkaa wikitekstiä</span></a><span class="mw-editsection-bracket">]</span></span></div> <figure class="mw-halign-right" typeof="mw:File/Thumb"><a href="/wiki/Tiedosto:Associative_array_as_linked_list.svg" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/0/05/Associative_array_as_linked_list.svg/320px-Associative_array_as_linked_list.svg.png" decoding="async" width="320" height="121" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/0/05/Associative_array_as_linked_list.svg/480px-Associative_array_as_linked_list.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/0/05/Associative_array_as_linked_list.svg/640px-Associative_array_as_linked_list.svg.png 2x" data-file-width="688" data-file-height="261" /></a><figcaption>Linkitetyn listan alkioina on kolmikoita (<i>linkki</i>, <i>avain</i>, <i>arvo</i>), joten se toimii hakurakenteena.</figcaption></figure> <p>Yksinkertaisinta on käyttää toteutukseen <a href="/wiki/Linkitetty_lista" title="Linkitetty lista">linkitettyä listaa</a> säilömään (<i>avain</i>, <i>arvo</i>)-pareja, jolloin kyselyn <a href="/wiki/Asymptoottinen_suoritusaika" title="Asymptoottinen suoritusaika">asymptoottinen suoritusaika</a> on <i>O</i>(<i>n</i>). <a href="/wiki/Tasapainotettu_hakupuu" class="mw-redirect" title="Tasapainotettu hakupuu">Tasapainotetulla hakupuulla</a> päästään aikaan <i>O</i>(log <i>n</i>) ja <a href="/wiki/Hajautustaulu" title="Hajautustaulu">hajautustaululla</a> keskimääräiseen suoritusaikaan <i>O</i>(1). Ennaltalaskettuja tulosarvoja sisältävää <a href="/wiki/Hakutaulu" title="Hakutaulu">hakutaulua</a> voidaan käyttää <a href="/wiki/Ohjelman_optimointi" title="Ohjelman optimointi">ohjelman optimointiin</a> kun laskenta vaatisi enemmän aikaa kuin muistihaku.<sup id="cite_ref-mesa_2-0" class="reference"><a href="#cite_note-mesa-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup> </p><p>Oikeastaan avaimien ja arvojen käsitteleminen erillisenä ei ole välttämätöntä, sillä mihin tahansa haku-, lisäys- ja poisto-operaatiot toteuttavaan tietorakenteeseen voidaan tallentaa (<i>avain</i>, <i>arvo</i>)-pareja.<sup id="cite_ref-3" class="reference"><a href="#cite_note-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup> Tällöin parien vertailun on toimittava yksinomaan avaimen perusteella. </p><p>Usein sallitaan useiden arvojen tallentaminen samaan avaimeen. Etenkin <a href="/wiki/C%2B%2B" title="C++">C++</a>-ohjelmointikielen yhteydessä tätä kutsutaan <i>assosiaatiomonitauluksi</i> (<i>multimap</i>). Joissakin yhteyksissä hakurakenteen rajapintaa on laajennettu tukemaan muitakin operaatioita, kuten seuraajaa (hae löydetystä avaimesta järjestyksessä seuraava) tai aluehakua (<i>range query</i>, hae kaikki avaimet annetulta väliltä). </p> <div class="mw-heading mw-heading2"><h2 id="Tuki_ohjelmointikielissä"><span id="Tuki_ohjelmointikieliss.C3.A4"></span>Tuki ohjelmointikielissä</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Hakurakenne&veaction=edit&section=2" title="Muokkaa osiota Tuki ohjelmointikielissä" class="mw-editsection-visualeditor"><span>muokkaa</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Hakurakenne&action=edit&section=2" title="Muokkaa osion lähdekoodia: Tuki ohjelmointikielissä"><span>muokkaa wikitekstiä</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Ohjelmoinnissa hakurakenteen toteuttavaa tietotyyppiä kutsutaan assosiaatiotauluksi. Koska assosiaatiotaulut ovat hyvin yleiskäyttöisiä, useat ohjelmointikielet tukevat niitä suoraan. <a href="/wiki/Lua" title="Lua">Lua</a>-kieli jopa perustuu täysin niiden varaan. Yleisimpiä nimiä assosiaatiotaululle ovat <i>dictionary</i> (sanakirja), <i>map</i> (kuvaus) tai tyypillisen toteutustavan mukaan <i>hash table</i>, <a href="/wiki/Hajautustaulu" title="Hajautustaulu">hajautustaulu</a>. </p> <div class="mw-heading mw-heading3"><h3 id="C++"><span id="C.2B.2B"></span>C++</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Hakurakenne&veaction=edit&section=3" title="Muokkaa osiota C++" class="mw-editsection-visualeditor"><span>muokkaa</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Hakurakenne&action=edit&section=3" title="Muokkaa osion lähdekoodia: C++"><span>muokkaa wikitekstiä</span></a><span class="mw-editsection-bracket">]</span></span></div> <p><a href="/wiki/C%2B%2B" title="C++">C++</a>:n <a href="/wiki/Standard_Template_Library" title="Standard Template Library">standardimallikirjastossa</a> on säiliöluokkia kuten <code>std::map</code><sup id="cite_ref-4" class="reference"><a href="#cite_note-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup>, joka on tyypillisesti toteutettu tasapainotettuna <a href="/wiki/Bin%C3%A4%C3%A4rinen_hakupuu" title="Binäärinen hakupuu">binäärihakupuuna</a>.<sup id="cite_ref-5" class="reference"><a href="#cite_note-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup> Standardi velvoittaa, että indeksointi voidaan tehdä ajassa <i>O</i>(log <i>n</i>).<sup id="cite_ref-cpp_map_aika_6-0" class="reference"><a href="#cite_note-cpp_map_aika-6"><span class="cite-bracket">[</span>6<span class="cite-bracket">]</span></a></sup> </p> <div class="mw-highlight mw-highlight-lang-cpp mw-content-ltr" dir="ltr"><pre><span></span><span class="w"> </span><span class="cp">#include</span><span class="w"> </span><span class="cpf"><string></span> <span class="w"> </span><span class="cp">#include</span><span class="w"> </span><span class="cpf"><map></span> <span class="w"> </span><span class="n">std</span><span class="o">::</span><span class="n">map</span><span class="o"><</span><span class="n">std</span><span class="o">::</span><span class="n">string</span><span class="p">,</span><span class="w"> </span><span class="kt">int</span><span class="o">></span><span class="w"> </span><span class="n">taulu</span><span class="p">;</span> <span class="w"> </span><span class="n">taulu</span><span class="p">[</span><span class="s">"Jussi Virtanen"</span><span class="p">]</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">991234567</span><span class="p">;</span> <span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">nro</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">taulu</span><span class="p">[</span><span class="s">"Jussi Virtanen"</span><span class="p">];</span> </pre></div> <p><a href="/wiki/C%2B%2B11" title="C++11">C++11</a>-standardia edeltävässä <a href="/wiki/Technical_Report_1" title="Technical Report 1">Technical Report 1</a> -muistiossa standardikirjastoon on lisätty <code>std::unordered_map</code>, joka toteuttaa assosiaatiotaulun <a href="/wiki/Hajautustaulu" title="Hajautustaulu">hajautustauluna</a>. </p> <div class="mw-heading mw-heading3"><h3 id="Lua">Lua</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Hakurakenne&veaction=edit&section=4" title="Muokkaa osiota Lua" class="mw-editsection-visualeditor"><span>muokkaa</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Hakurakenne&action=edit&section=4" title="Muokkaa osion lähdekoodia: Lua"><span>muokkaa wikitekstiä</span></a><span class="mw-editsection-bracket">]</span></span></div> <p><a href="/wiki/Lua" title="Lua">Luan</a> ainoa sisäänrakennettu tietorakenne on assosiaatiotaulu, jonka avulla <a href="/wiki/Tietue" title="Tietue">tietueet</a>, taulukot ja oliot rakennetaan. Koska assosiaatiotaulut ovat kaikkialla, niistä käytetään vain sanaa <i>table</i>, taulu. </p> <div class="mw-highlight mw-highlight-lang-lua mw-content-ltr" dir="ltr"><pre><span></span> <span class="n">taulu</span> <span class="o">=</span> <span class="p">{}</span> <span class="n">taulu</span> <span class="o">=</span> <span class="p">{</span><span class="n">x</span> <span class="o">=</span> <span class="mi">10</span><span class="p">}</span> <span class="nb">print</span><span class="p">(</span><span class="n">taulu</span><span class="p">[</span><span class="s2">"x"</span><span class="p">])</span> <span class="c1">-- tulostaa 10</span> <span class="nb">print</span><span class="p">(</span><span class="n">taulu</span><span class="p">.</span><span class="n">x</span><span class="p">)</span> <span class="c1">-- tulostaa 10</span> <span class="n">taulukko</span> <span class="o">=</span> <span class="p">{</span> <span class="s2">"a"</span><span class="p">,</span> <span class="s2">"b"</span><span class="p">,</span> <span class="s2">"c"</span><span class="p">,</span> <span class="s2">"d"</span> <span class="p">}</span> <span class="c1">-- alkiot saavat automaattisesti avaimet 1, 2, 3 ja 4</span> <span class="nb">print</span><span class="p">(</span><span class="n">taulukko</span><span class="p">[</span><span class="mi">2</span><span class="p">])</span> <span class="c1">-- tulostaa "b"</span> </pre></div> <div class="mw-heading mw-heading3"><h3 id="Python">Python</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Hakurakenne&veaction=edit&section=5" title="Muokkaa osiota Python" class="mw-editsection-visualeditor"><span>muokkaa</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Hakurakenne&action=edit&section=5" title="Muokkaa osion lähdekoodia: Python"><span>muokkaa wikitekstiä</span></a><span class="mw-editsection-bracket">]</span></span></div> <p><a href="/wiki/Python_(ohjelmointikieli)" title="Python (ohjelmointikieli)">Pythonissa</a> on sisäänrakennettu assosiaatiotaulu, josta käytetään sanaa <i>dictionary</i>, sanakirja. </p> <div class="mw-highlight mw-highlight-lang-python mw-content-ltr" dir="ltr"><pre><span></span> <span class="o">>>></span> <span class="n">sanakirja</span> <span class="o">=</span> <span class="p">{</span><span class="s1">'map'</span><span class="p">:</span> <span class="s1">'kuvaus'</span><span class="p">,</span> <span class="s1">'lookup'</span><span class="p">:</span> <span class="s1">'haku'</span><span class="p">}</span> <span class="o">>>></span> <span class="nb">print</span><span class="p">(</span><span class="n">sanakirja</span><span class="p">[</span><span class="s1">'map'</span><span class="p">])</span> <span class="n">kuvaus</span> </pre></div> <div class="mw-heading mw-heading2"><h2 id="Katso_myös"><span id="Katso_my.C3.B6s"></span>Katso myös</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Hakurakenne&veaction=edit&section=6" title="Muokkaa osiota Katso myös" class="mw-editsection-visualeditor"><span>muokkaa</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Hakurakenne&action=edit&section=6" title="Muokkaa osion lähdekoodia: Katso myös"><span>muokkaa wikitekstiä</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li><a href="/wiki/Punamusta_puu" title="Punamusta puu">Punamusta puu</a></li></ul> <div class="mw-heading mw-heading3"><h3 id="Muita_abstrakteja_tietotyyppejä"><span id="Muita_abstrakteja_tietotyyppej.C3.A4"></span>Muita abstrakteja tietotyyppejä</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Hakurakenne&veaction=edit&section=7" title="Muokkaa osiota Muita abstrakteja tietotyyppejä" class="mw-editsection-visualeditor"><span>muokkaa</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Hakurakenne&action=edit&section=7" title="Muokkaa osion lähdekoodia: Muita abstrakteja tietotyyppejä"><span>muokkaa wikitekstiä</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li><a href="/wiki/Jono_(tietojenk%C3%A4sittelytiede)" title="Jono (tietojenkäsittelytiede)">Jono</a></li> <li><a href="/wiki/S%C3%A4ili%C3%B6_(abstrakti_tietotyyppi)" title="Säiliö (abstrakti tietotyyppi)">Säiliö</a></li> <li><a href="/wiki/Pino" title="Pino">Pino</a></li> <li><a href="/wiki/Prioriteettijono" title="Prioriteettijono">Prioriteettijono</a></li></ul> <div class="mw-heading mw-heading2"><h2 id="Lähteet"><span id="L.C3.A4hteet"></span>Lähteet</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Hakurakenne&veaction=edit&section=8" title="Muokkaa osiota Lähteet" class="mw-editsection-visualeditor"><span>muokkaa</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Hakurakenne&action=edit&section=8" title="Muokkaa osion lähdekoodia: Lähteet"><span>muokkaa wikitekstiä</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li><span class="verkkoviite" title="Verkkoviite">L. Malmi, A. Korhonen, V. Karavirta: <a rel="nofollow" class="external text" href="http://trakla.cs.hut.fi/ebook_fi/ebook-Hakurakenteet.html">TRAKLA2: Elektroninen oppikirja / Opetusmoniste: Hakurakenteet</a>  27. joulukuuta 2006. Teknillinen korkeakoulu. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20070612051704/http://trakla.cs.hut.fi/ebook_fi/ebook-Hakurakenteet.html">Arkistoitu</a> 12.6.2007. Viitattu 1. huhtikuuta 2007.</span></li></ul> <ul><li><span class="kirjaviite" title="Kirjaviite">Thomas Cormen, Charles Leiserson, Ronald Rivest ja Clifford Stein: <i>Introduction to Algorithms – 2nd ed.</i>  MIT Press ja McGraw-Hill, 2001.  <a href="/wiki/Toiminnot:Kirjal%C3%A4hteet/0-262-03293-7" title="Toiminnot:Kirjalähteet/0-262-03293-7">ISBN 0-262-03293-7</a> </span></li></ul> <div class="mw-heading mw-heading3"><h3 id="Viitteet">Viitteet</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Hakurakenne&veaction=edit&section=9" title="Muokkaa osiota Viitteet" class="mw-editsection-visualeditor"><span>muokkaa</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Hakurakenne&action=edit&section=9" title="Muokkaa osion lähdekoodia: Viitteet"><span>muokkaa wikitekstiä</span></a><span class="mw-editsection-bracket">]</span></span></div> <div id="viitteet-malline" class="viitteet-malline" style="list-style-type:decimal;"><ol class="references"> <li id="cite_note-laaksonen-1"><span class="mw-cite-backlink"><a href="#cite_ref-laaksonen_1-0">↑</a></span> <span class="reference-text"><span class="verkkoviite" title="Verkkoviite">Laaksonen, Antti: <a rel="nofollow" class="external text" href="https://www.cs.helsinki.fi/u/ahslaaks/kkkk.pdf">Kisakoodarin käsikirja</a> (Sivut 48–49) <i>cs.helsinki.fi</i>.  2018. Viitattu 15.12.2020.</span></span> </li> <li id="cite_note-mesa-2"><span class="mw-cite-backlink"><a href="#cite_ref-mesa_2-0">↑</a></span> <span class="reference-text"><span class="verkkoviite" title="Verkkoviite">Chris Wilcox & Michelle Mills Strout & James M. Bieman: <a rel="nofollow" class="external text" href="http://www.cs.colostate.edu/~wilcox/Papers/IWMSE11_Paper.pdf">Mesa: Automatic Generation of Lookup Table Optimizations</a> <small>(PDF)</small> <i>cs.colostate.edu</i>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20170811222319/http://www.cs.colostate.edu/~wilcox/Papers/IWMSE11_Paper.pdf">Arkistoitu</a> 11.8.2017. Viitattu 29.8.2019. <span style="font-size: 0.95em; position: relative;">(englanniksi)</span></span></span> </li> <li id="cite_note-3"><span class="mw-cite-backlink"><a href="#cite_ref-3">↑</a></span> <span class="reference-text"><span class="kirjaviite" title="Kirjaviite">Thomas Cormen, Charles Leiserson, Ronald Rivest ja Clifford Stein: <i>Introduction to Algorithms – 2nd ed.</i> s. 197–198.  MIT Press ja McGraw-Hill, 2001.  <a href="/wiki/Toiminnot:Kirjal%C3%A4hteet/0-262-03293-7" title="Toiminnot:Kirjalähteet/0-262-03293-7">ISBN 0-262-03293-7</a> </span></span> </li> <li id="cite_note-4"><span class="mw-cite-backlink"><a href="#cite_ref-4">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external free" href="http://www.cppreference.com/cppmap/">http://www.cppreference.com/cppmap/</a></span> </li> <li id="cite_note-5"><span class="mw-cite-backlink"><a href="#cite_ref-5">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external free" href="http://groups.google.fi/group/comp.lang.c++.moderated/browse_thread/thread/13feb73ec4135cf8/">http://groups.google.fi/group/comp.lang.c++.moderated/browse_thread/thread/13feb73ec4135cf8/</a> (<a rel="nofollow" class="external text" href="https://web.archive.org/web/20070926231900/http://groups.google.fi/group/comp.lang.c++.moderated/browse_thread/thread/13feb73ec4135cf8/">Arkistoitu</a> – Internet Archive)</span> </li> <li id="cite_note-cpp_map_aika-6"><span class="mw-cite-backlink"><a href="#cite_ref-cpp_map_aika_6-0">↑</a></span> <span class="reference-text"><span class="kirjaviite" title="Kirjaviite">Bjarne Stroustrup: ”17.1.2: Säiliöiden yhteenveto”, <i>C++-ohjelmointi</i>.  (2. painos. Alkup. <i>The C++ Programming Language – 3rd. ed</i>)  Teknolit/Addison-Wesley, 1997.  <a href="/wiki/Toiminnot:Kirjal%C3%A4hteet/0-201-88954-4" title="Toiminnot:Kirjalähteet/0-201-88954-4">ISBN 0-201-88954-4</a> </span></span> </li> </ol> </div> <div class="mw-heading mw-heading2"><h2 id="Aiheesta_muualla">Aiheesta muualla</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Hakurakenne&veaction=edit&section=10" title="Muokkaa osiota Aiheesta muualla" class="mw-editsection-visualeditor"><span>muokkaa</span></a><span class="mw-editsection-divider"> | </span><a href="/w/index.php?title=Hakurakenne&action=edit&section=10" title="Muokkaa osion lähdekoodia: Aiheesta muualla"><span>muokkaa wikitekstiä</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li>TRAKLA2: <a rel="nofollow" class="external text" href="http://trakla.cs.hut.fi/ebook_fi/ebook-Hakurakenteet.html">Hakurakenteet</a> (<a rel="nofollow" class="external text" href="https://web.archive.org/web/20070612051704/http://trakla.cs.hut.fi/ebook_fi/ebook-Hakurakenteet.html">Arkistoitu</a> – Internet Archive)</li></ul></div><!--esi <esi:include src="/esitest-fa8a495983347898/content" /> --><noscript><img src="https://login.wikimedia.org/wiki/Special:CentralAutoLogin/start?type=1x1" alt="" width="1" height="1" style="border: none; position: absolute;"></noscript> <div class="printfooter" data-nosnippet="">Noudettu kohteesta ”<a dir="ltr" href="https://fi.wikipedia.org/w/index.php?title=Hakurakenne&oldid=22777709">https://fi.wikipedia.org/w/index.php?title=Hakurakenne&oldid=22777709</a>”</div></div> <div id="catlinks" class="catlinks" data-mw="interface"><div id="mw-normal-catlinks" class="mw-normal-catlinks"><a href="/wiki/Toiminnot:Luokat" title="Toiminnot:Luokat">Luokka</a>: <ul><li><a href="/wiki/Luokka:Tietorakenteet" title="Luokka:Tietorakenteet">Tietorakenteet</a></li></ul></div></div> </div> </div> <div id="mw-navigation"> <h2>Navigointivalikko</h2> <div id="mw-head"> <nav id="p-personal" class="mw-portlet mw-portlet-personal vector-user-menu-legacy vector-menu" aria-labelledby="p-personal-label" > <h3 id="p-personal-label" class="vector-menu-heading " > <span class="vector-menu-heading-label">Henkilökohtaiset työkalut</span> </h3> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-anonuserpage" class="mw-list-item"><span title="IP-osoitteesi käyttäjäsivu">Et ole kirjautunut</span></li><li id="pt-anontalk" class="mw-list-item"><a href="/wiki/Toiminnot:Oma_keskustelu" title="Keskustelu tämän IP-osoitteen muokkauksista [n]" accesskey="n"><span>Keskustelu</span></a></li><li id="pt-anoncontribs" class="mw-list-item"><a href="/wiki/Toiminnot:Omat_muokkaukset" title="Luettelo tästä IP-osoitteesta tehdyistä muokkauksista [y]" accesskey="y"><span>Muokkaukset</span></a></li><li id="pt-createaccount" class="mw-list-item"><a href="/w/index.php?title=Toiminnot:Luo_tunnus&returnto=Hakurakenne" title="On suositeltavaa luoda käyttäjätunnus ja kirjautua sisään. Se ei kuitenkaan ole pakollista."><span>Luo tunnus</span></a></li><li id="pt-login" class="mw-list-item"><a href="/w/index.php?title=Toiminnot:Kirjaudu_sis%C3%A4%C3%A4n&returnto=Hakurakenne" title="On suositeltavaa kirjautua sisään. Se ei kuitenkaan ole pakollista. [o]" accesskey="o"><span>Kirjaudu sisään</span></a></li> </ul> </div> </nav> <div id="left-navigation"> <nav id="p-namespaces" class="mw-portlet mw-portlet-namespaces vector-menu-tabs vector-menu-tabs-legacy vector-menu" aria-labelledby="p-namespaces-label" > <h3 id="p-namespaces-label" class="vector-menu-heading " > <span class="vector-menu-heading-label">Nimiavaruudet</span> </h3> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-nstab-main" class="selected mw-list-item"><a href="/wiki/Hakurakenne" title="Näytä sisältösivu [c]" accesskey="c"><span>Artikkeli</span></a></li><li id="ca-talk" class="mw-list-item"><a href="/wiki/Keskustelu:Hakurakenne" rel="discussion" title="Keskustele sisällöstä [t]" accesskey="t"><span>Keskustelu</span></a></li> </ul> </div> </nav> <nav id="p-variants" class="mw-portlet mw-portlet-variants emptyPortlet vector-menu-dropdown vector-menu" aria-labelledby="p-variants-label" > <input type="checkbox" id="p-variants-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-p-variants" class="vector-menu-checkbox" aria-labelledby="p-variants-label" > <label id="p-variants-label" class="vector-menu-heading " > <span class="vector-menu-heading-label">suomi</span> </label> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </nav> </div> <div id="right-navigation"> <nav id="p-views" class="mw-portlet mw-portlet-views vector-menu-tabs vector-menu-tabs-legacy vector-menu" aria-labelledby="p-views-label" > <h3 id="p-views-label" class="vector-menu-heading " > <span class="vector-menu-heading-label">Näkymät</span> </h3> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-view" class="selected mw-list-item"><a href="/wiki/Hakurakenne"><span>Lue</span></a></li><li id="ca-ve-edit" class="mw-list-item"><a href="/w/index.php?title=Hakurakenne&veaction=edit" title="Muokkaa tätä sivua [v]" accesskey="v"><span>Muokkaa</span></a></li><li id="ca-edit" class="collapsible mw-list-item"><a href="/w/index.php?title=Hakurakenne&action=edit" title="Muokkaa tämän sivun lähdekoodia [e]" accesskey="e"><span>Muokkaa wikitekstiä</span></a></li><li id="ca-history" class="mw-list-item"><a href="/w/index.php?title=Hakurakenne&action=history" title="Sivun aikaisemmat versiot [h]" accesskey="h"><span>Näytä historia</span></a></li> </ul> </div> </nav> <nav id="p-cactions" class="mw-portlet mw-portlet-cactions emptyPortlet vector-menu-dropdown vector-menu" aria-labelledby="p-cactions-label" title="Lisää valintoja" > <input type="checkbox" id="p-cactions-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-p-cactions" class="vector-menu-checkbox" aria-labelledby="p-cactions-label" > <label id="p-cactions-label" class="vector-menu-heading " > <span class="vector-menu-heading-label">Muut</span> </label> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </nav> <div id="p-search" role="search" class="vector-search-box-vue vector-search-box-show-thumbnail vector-search-box-auto-expand-width vector-search-box"> <h3 >Haku</h3> <form action="/w/index.php" id="searchform" class="vector-search-box-form"> <div id="simpleSearch" class="vector-search-box-inner" data-search-loc="header-navigation"> <input class="vector-search-box-input" type="search" name="search" placeholder="Hae Wikipediasta" aria-label="Hae Wikipediasta" autocapitalize="sentences" title="Hae Wikipediasta [f]" accesskey="f" id="searchInput" > <input type="hidden" name="title" value="Toiminnot:Haku"> <input id="mw-searchButton" class="searchButton mw-fallbackSearchButton" type="submit" name="fulltext" title="Hae sivuilta tätä tekstiä" value="Hae"> <input id="searchButton" class="searchButton" type="submit" name="go" title="Siirry sivulle, joka on tarkalleen tällä nimellä" value="Siirry"> </div> </form> </div> </div> </div> <div id="mw-panel" class="vector-legacy-sidebar"> <div id="p-logo" role="banner"> <a class="mw-wiki-logo" href="/wiki/Wikipedia:Etusivu" title="Etusivu"></a> </div> <nav id="p-navigation" class="mw-portlet mw-portlet-navigation vector-menu-portal portal vector-menu" aria-labelledby="p-navigation-label" > <h3 id="p-navigation-label" class="vector-menu-heading " > <span class="vector-menu-heading-label">Valikko</span> </h3> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-mainpage-description" class="mw-list-item"><a href="/wiki/Wikipedia:Etusivu" title="Siirry etusivulle [z]" accesskey="z"><span>Etusivu</span></a></li><li id="n-aboutsite" class="mw-list-item"><a href="/wiki/Wikipedia:Tietoja"><span>Tietoja Wikipediasta</span></a></li><li id="n-allarticles" class="mw-list-item"><a href="/wiki/Wikipedia:Selaa_luokittain"><span>Kaikki sivut</span></a></li><li id="n-randompage" class="mw-list-item"><a href="/wiki/Toiminnot:Satunnainen_sivu" title="Avaa satunnainen sivu [x]" accesskey="x"><span>Satunnainen artikkeli</span></a></li> </ul> </div> </nav> <nav id="p-interaction" class="mw-portlet mw-portlet-interaction vector-menu-portal portal vector-menu" aria-labelledby="p-interaction-label" > <h3 id="p-interaction-label" class="vector-menu-heading " > <span class="vector-menu-heading-label">Osallistuminen</span> </h3> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-help" class="mw-list-item"><a href="/wiki/Ohje:Sis%C3%A4llys" title="Ohjeita"><span>Ohje</span></a></li><li id="n-Kahvihuone" class="mw-list-item"><a href="/wiki/Wikipedia:Kahvihuone"><span>Kahvihuone</span></a></li><li id="n-currentevents" class="mw-list-item"><a href="/wiki/Wikipedia:Ajankohtaista" title="Taustatietoa tämänhetkisistä tapahtumista"><span>Ajankohtaista</span></a></li><li id="n-Tuoreet-odottavat-muutokset" class="mw-list-item"><a href="//fi.wikipedia.org/wiki/Toiminnot:Tuoreet_muutokset?damaging=&goodfaith=&hideliu=0&hideanons=0&userExpLevel=&hidemyself=0&hidebyothers=0&hidebots=1&hidehumans=0&hidepatrolled=1&hideunpatrolled=0&hideminor=0&hidemajor=0&hidepageedits=0&hidenewpages=0&hidecategorization=1&hideWikibase=1&hidelog=0&highlight=1&goodfaith__verylikelybad_color=c5&goodfaith__likelybad_color=c4&goodfaith__maybebad_color=c3&damaging__verylikelybad_color=c5&damaging__likelybad_color=c4&damaging__maybebad_color=c3"><span>Tuoreet odottavat muutokset</span></a></li><li id="n-recentchanges" class="mw-list-item"><a href="/wiki/Toiminnot:Tuoreet_muutokset" title="Luettelo tuoreista muutoksista [r]" accesskey="r"><span>Tuoreet muutokset</span></a></li><li id="n-sitesupport" class="mw-list-item"><a href="//donate.wikimedia.org/wiki/Special:FundraiserRedirector?utm_source=donate&utm_medium=sidebar&utm_campaign=C13_fi.wikipedia.org&uselang=fi" title="Tue meitä"><span>Lahjoitukset</span></a></li> </ul> </div> </nav> <nav id="p-tb" class="mw-portlet mw-portlet-tb vector-menu-portal portal vector-menu" aria-labelledby="p-tb-label" > <h3 id="p-tb-label" class="vector-menu-heading " > <span class="vector-menu-heading-label">Työkalut</span> </h3> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="t-whatlinkshere" class="mw-list-item"><a href="/wiki/Toiminnot:T%C3%A4nne_viittaavat_sivut/Hakurakenne" title="Lista sivuista, jotka viittaavat tänne [j]" accesskey="j"><span>Tänne viittaavat sivut</span></a></li><li id="t-recentchangeslinked" class="mw-list-item"><a href="/wiki/Toiminnot:Linkitetyt_muutokset/Hakurakenne" rel="nofollow" title="Viimeisimmät muokkaukset sivuissa, joille viitataan tältä sivulta [k]" accesskey="k"><span>Linkitettyjen sivujen muutokset</span></a></li><li id="t-specialpages" class="mw-list-item"><a href="/wiki/Toiminnot:Toimintosivut" title="Näytä toimintosivut [q]" accesskey="q"><span>Toimintosivut</span></a></li><li id="t-permalink" class="mw-list-item"><a href="/w/index.php?title=Hakurakenne&oldid=22777709" title="Ikilinkki tämän sivun tähän versioon"><span>Ikilinkki</span></a></li><li id="t-info" class="mw-list-item"><a href="/w/index.php?title=Hakurakenne&action=info" title="Enemmän tietoa tästä sivusta"><span>Sivun tiedot</span></a></li><li id="t-cite" class="mw-list-item"><a href="/w/index.php?title=Toiminnot:Viittaus&page=Hakurakenne&id=22777709&wpFormIdentifier=titleform" title="Tietoa tämän sivun lainaamisesta"><span>Viitetiedot</span></a></li><li id="t-urlshortener" class="mw-list-item"><a href="/w/index.php?title=Toiminnot:UrlShortener&url=https%3A%2F%2Ffi.wikipedia.org%2Fwiki%2FHakurakenne"><span>Lyhennä URL-osoite</span></a></li><li id="t-urlshortener-qrcode" class="mw-list-item"><a href="/w/index.php?title=Toiminnot:QrCode&url=https%3A%2F%2Ffi.wikipedia.org%2Fwiki%2FHakurakenne"><span>Lataa QR-koodi</span></a></li> </ul> </div> </nav> <nav id="p-coll-print_export" class="mw-portlet mw-portlet-coll-print_export vector-menu-portal portal vector-menu" aria-labelledby="p-coll-print_export-label" > <h3 id="p-coll-print_export-label" class="vector-menu-heading " > <span class="vector-menu-heading-label">Tulosta/vie</span> </h3> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="coll-download-as-rl" class="mw-list-item"><a href="/w/index.php?title=Toiminnot:DownloadAsPdf&page=Hakurakenne&action=show-download-screen"><span>Lataa PDF-tiedostona</span></a></li><li id="t-print" class="mw-list-item"><a href="/w/index.php?title=Hakurakenne&printable=yes" title="Tulostettava versio [p]" accesskey="p"><span>Tulostettava versio</span></a></li> </ul> </div> </nav> <nav id="p-wikibase-otherprojects" class="mw-portlet mw-portlet-wikibase-otherprojects vector-menu-portal portal vector-menu" aria-labelledby="p-wikibase-otherprojects-label" > <h3 id="p-wikibase-otherprojects-label" class="vector-menu-heading " > <span class="vector-menu-heading-label">Muissa hankkeissa</span> </h3> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="t-wikibase" class="wb-otherproject-link wb-otherproject-wikibase-dataitem mw-list-item"><a href="https://www.wikidata.org/wiki/Special:EntityPage/Q80585" title="Linkki yhdistettyyn keskustietovaraston kohteeseen [g]" accesskey="g"><span>Wikidata-kohde</span></a></li> </ul> </div> </nav> <nav id="p-lang" class="mw-portlet mw-portlet-lang vector-menu-portal portal vector-menu" aria-labelledby="p-lang-label" > <h3 id="p-lang-label" class="vector-menu-heading " > <span class="vector-menu-heading-label">Muilla kielillä</span> </h3> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li class="interlanguage-link interwiki-ar mw-list-item"><a href="https://ar.wikipedia.org/wiki/%D9%85%D8%B5%D9%81%D9%88%D9%81%D8%A9_%D8%A7%D8%B1%D8%AA%D8%A8%D8%A7%D8%B7%D9%8A%D8%A9" title="مصفوفة ارتباطية — arabia" lang="ar" hreflang="ar" data-title="مصفوفة ارتباطية" data-language-autonym="العربية" data-language-local-name="arabia" class="interlanguage-link-target"><span>العربية</span></a></li><li class="interlanguage-link interwiki-ms mw-list-item"><a href="https://ms.wikipedia.org/wiki/Tatasusunan_bersekutu" title="Tatasusunan bersekutu — malaiji" lang="ms" hreflang="ms" data-title="Tatasusunan bersekutu" data-language-autonym="Bahasa Melayu" data-language-local-name="malaiji" class="interlanguage-link-target"><span>Bahasa Melayu</span></a></li><li class="interlanguage-link interwiki-bg mw-list-item"><a href="https://bg.wikipedia.org/wiki/%D0%90%D1%81%D0%BE%D1%86%D0%B8%D0%B0%D1%82%D0%B8%D0%B2%D0%B5%D0%BD_%D0%BC%D0%B0%D1%81%D0%B8%D0%B2" title="Асоциативен масив — bulgaria" lang="bg" hreflang="bg" data-title="Асоциативен масив" data-language-autonym="Български" data-language-local-name="bulgaria" class="interlanguage-link-target"><span>Български</span></a></li><li class="interlanguage-link interwiki-ca mw-list-item"><a href="https://ca.wikipedia.org/wiki/Array_associatiu_(estructura_de_dades)" title="Array associatiu (estructura de dades) — katalaani" lang="ca" hreflang="ca" data-title="Array associatiu (estructura de dades)" data-language-autonym="Català" data-language-local-name="katalaani" class="interlanguage-link-target"><span>Català</span></a></li><li class="interlanguage-link interwiki-cs mw-list-item"><a href="https://cs.wikipedia.org/wiki/Asociativn%C3%AD_pole" title="Asociativní pole — tšekki" lang="cs" hreflang="cs" data-title="Asociativní pole" data-language-autonym="Čeština" data-language-local-name="tšekki" class="interlanguage-link-target"><span>Čeština</span></a></li><li class="interlanguage-link interwiki-de mw-list-item"><a href="https://de.wikipedia.org/wiki/Zuordnungstabelle" title="Zuordnungstabelle — saksa" lang="de" hreflang="de" data-title="Zuordnungstabelle" data-language-autonym="Deutsch" data-language-local-name="saksa" class="interlanguage-link-target"><span>Deutsch</span></a></li><li class="interlanguage-link interwiki-en mw-list-item"><a href="https://en.wikipedia.org/wiki/Associative_array" title="Associative array — englanti" lang="en" hreflang="en" data-title="Associative array" data-language-autonym="English" data-language-local-name="englanti" class="interlanguage-link-target"><span>English</span></a></li><li class="interlanguage-link interwiki-eo mw-list-item"><a href="https://eo.wikipedia.org/wiki/Asocia_tabelo" title="Asocia tabelo — esperanto" lang="eo" hreflang="eo" data-title="Asocia tabelo" data-language-autonym="Esperanto" data-language-local-name="esperanto" class="interlanguage-link-target"><span>Esperanto</span></a></li><li class="interlanguage-link interwiki-fa mw-list-item"><a href="https://fa.wikipedia.org/wiki/%D8%A2%D8%B1%D8%A7%DB%8C%D9%87_%D8%A7%D9%86%D8%AC%D9%85%D9%86%DB%8C" title="آرایه انجمنی — persia" lang="fa" hreflang="fa" data-title="آرایه انجمنی" data-language-autonym="فارسی" data-language-local-name="persia" class="interlanguage-link-target"><span>فارسی</span></a></li><li class="interlanguage-link interwiki-fr mw-list-item"><a href="https://fr.wikipedia.org/wiki/Tableau_associatif" title="Tableau associatif — ranska" lang="fr" hreflang="fr" data-title="Tableau associatif" data-language-autonym="Français" data-language-local-name="ranska" class="interlanguage-link-target"><span>Français</span></a></li><li class="interlanguage-link interwiki-ko mw-list-item"><a href="https://ko.wikipedia.org/wiki/%EC%97%B0%EA%B4%80_%EB%B0%B0%EC%97%B4" title="연관 배열 — korea" lang="ko" hreflang="ko" data-title="연관 배열" data-language-autonym="한국어" data-language-local-name="korea" class="interlanguage-link-target"><span>한국어</span></a></li><li class="interlanguage-link interwiki-it mw-list-item"><a href="https://it.wikipedia.org/wiki/Array_associativo" title="Array associativo — italia" lang="it" hreflang="it" data-title="Array associativo" data-language-autonym="Italiano" data-language-local-name="italia" class="interlanguage-link-target"><span>Italiano</span></a></li><li class="interlanguage-link interwiki-he mw-list-item"><a href="https://he.wikipedia.org/wiki/%D7%9E%D7%99%D7%9C%D7%95%D7%9F_(%D7%9E%D7%91%D7%A0%D7%94_%D7%A0%D7%AA%D7%95%D7%A0%D7%99%D7%9D)" title="מילון (מבנה נתונים) — heprea" lang="he" hreflang="he" data-title="מילון (מבנה נתונים)" data-language-autonym="עברית" data-language-local-name="heprea" class="interlanguage-link-target"><span>עברית</span></a></li><li class="interlanguage-link interwiki-hu mw-list-item"><a href="https://hu.wikipedia.org/wiki/Asszociat%C3%ADv_t%C3%B6mb" title="Asszociatív tömb — unkari" lang="hu" hreflang="hu" data-title="Asszociatív tömb" data-language-autonym="Magyar" data-language-local-name="unkari" class="interlanguage-link-target"><span>Magyar</span></a></li><li class="interlanguage-link interwiki-nl mw-list-item"><a href="https://nl.wikipedia.org/wiki/Associatieve_array" title="Associatieve array — hollanti" lang="nl" hreflang="nl" data-title="Associatieve array" data-language-autonym="Nederlands" data-language-local-name="hollanti" class="interlanguage-link-target"><span>Nederlands</span></a></li><li class="interlanguage-link interwiki-ja mw-list-item"><a href="https://ja.wikipedia.org/wiki/%E9%80%A3%E6%83%B3%E9%85%8D%E5%88%97" title="連想配列 — japani" lang="ja" hreflang="ja" data-title="連想配列" data-language-autonym="日本語" data-language-local-name="japani" class="interlanguage-link-target"><span>日本語</span></a></li><li class="interlanguage-link interwiki-no mw-list-item"><a href="https://no.wikipedia.org/wiki/Assosiativ_tabell" title="Assosiativ tabell — norjan bokmål" lang="nb" hreflang="nb" data-title="Assosiativ tabell" data-language-autonym="Norsk bokmål" data-language-local-name="norjan bokmål" class="interlanguage-link-target"><span>Norsk bokmål</span></a></li><li class="interlanguage-link interwiki-pl mw-list-item"><a href="https://pl.wikipedia.org/wiki/Tablica_asocjacyjna" title="Tablica asocjacyjna — puola" lang="pl" hreflang="pl" data-title="Tablica asocjacyjna" data-language-autonym="Polski" data-language-local-name="puola" class="interlanguage-link-target"><span>Polski</span></a></li><li class="interlanguage-link interwiki-pt mw-list-item"><a href="https://pt.wikipedia.org/wiki/Vetor_associativo" title="Vetor associativo — portugali" lang="pt" hreflang="pt" data-title="Vetor associativo" data-language-autonym="Português" data-language-local-name="portugali" class="interlanguage-link-target"><span>Português</span></a></li><li class="interlanguage-link interwiki-ru mw-list-item"><a href="https://ru.wikipedia.org/wiki/%D0%90%D1%81%D1%81%D0%BE%D1%86%D0%B8%D0%B0%D1%82%D0%B8%D0%B2%D0%BD%D1%8B%D0%B9_%D0%BC%D0%B0%D1%81%D1%81%D0%B8%D0%B2" title="Ассоциативный массив — venäjä" lang="ru" hreflang="ru" data-title="Ассоциативный массив" data-language-autonym="Русский" data-language-local-name="venäjä" class="interlanguage-link-target"><span>Русский</span></a></li><li class="interlanguage-link interwiki-sr mw-list-item"><a href="https://sr.wikipedia.org/wiki/%D0%90%D1%81%D0%BE%D1%86%D0%B8%D1%98%D0%B0%D1%82%D0%B8%D0%B2%D0%BD%D0%B8_%D0%BD%D0%B8%D0%B7" title="Асоцијативни низ — serbia" lang="sr" hreflang="sr" data-title="Асоцијативни низ" data-language-autonym="Српски / srpski" data-language-local-name="serbia" class="interlanguage-link-target"><span>Српски / srpski</span></a></li><li class="interlanguage-link interwiki-tl mw-list-item"><a href="https://tl.wikipedia.org/wiki/Asosiyatibong_array" title="Asosiyatibong array — tagalog" lang="tl" hreflang="tl" data-title="Asosiyatibong array" data-language-autonym="Tagalog" data-language-local-name="tagalog" class="interlanguage-link-target"><span>Tagalog</span></a></li><li class="interlanguage-link interwiki-th mw-list-item"><a href="https://th.wikipedia.org/wiki/%E0%B9%81%E0%B8%96%E0%B8%A7%E0%B8%A5%E0%B8%B3%E0%B8%94%E0%B8%B1%E0%B8%9A%E0%B9%81%E0%B8%9A%E0%B8%9A%E0%B8%88%E0%B8%B1%E0%B8%9A%E0%B8%84%E0%B8%B9%E0%B9%88" title="แถวลำดับแบบจับคู่ — thai" lang="th" hreflang="th" data-title="แถวลำดับแบบจับคู่" data-language-autonym="ไทย" data-language-local-name="thai" class="interlanguage-link-target"><span>ไทย</span></a></li><li class="interlanguage-link interwiki-uk mw-list-item"><a href="https://uk.wikipedia.org/wiki/%D0%90%D1%81%D0%BE%D1%86%D1%96%D0%B0%D1%82%D0%B8%D0%B2%D0%BD%D0%B8%D0%B9_%D0%BC%D0%B0%D1%81%D0%B8%D0%B2" title="Асоціативний масив — ukraina" lang="uk" hreflang="uk" data-title="Асоціативний масив" data-language-autonym="Українська" data-language-local-name="ukraina" class="interlanguage-link-target"><span>Українська</span></a></li><li class="interlanguage-link interwiki-zh-yue mw-list-item"><a href="https://zh-yue.wikipedia.org/wiki/%E9%97%9C%E8%81%AF%E9%99%A3%E5%88%97" title="關聯陣列 — kantoninkiina" lang="yue" hreflang="yue" data-title="關聯陣列" data-language-autonym="粵語" data-language-local-name="kantoninkiina" class="interlanguage-link-target"><span>粵語</span></a></li><li class="interlanguage-link interwiki-zh mw-list-item"><a href="https://zh.wikipedia.org/wiki/%E5%85%B3%E8%81%94%E6%95%B0%E7%BB%84" title="关联数组 — kiina" lang="zh" hreflang="zh" data-title="关联数组" data-language-autonym="中文" data-language-local-name="kiina" class="interlanguage-link-target"><span>中文</span></a></li> </ul> <div class="after-portlet after-portlet-lang"><span class="wb-langlinks-edit wb-langlinks-link"><a href="https://www.wikidata.org/wiki/Special:EntityPage/Q80585#sitelinks-wikipedia" title="Muokkaa kieltenvälisiä linkkejä" class="wbc-editpage">Muokkaa linkkejä</a></span></div> </div> </nav> </div> </div> <footer id="footer" class="mw-footer" > <ul id="footer-info"> <li id="footer-info-lastmod"> Sivua on viimeksi muutettu 12. marraskuuta 2024 kello 16.45.</li> <li id="footer-info-copyright">Teksti on saatavilla <a rel="nofollow" class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.fi">Creative Commons Attribution/Share-Alike</a> -lisenssillä; lisäehtoja voi sisältyä. Katso <a class="external text" href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Terms_of_Use/fi">käyttöehdot</a>.<br /> Wikipedia® on <a rel="nofollow" class="external text" href="https://wikimediafoundation.org/">Wikimedia Foundationin</a> rekisteröimä tavaramerkki.<br /> <a href="/wiki/Wikipedia:Artikkelien_ongelmat" title="Wikipedia:Artikkelien ongelmat">Ongelma artikkelissa?</a></li> </ul> <ul id="footer-places"> <li id="footer-places-privacy"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Privacy_policy">Tietosuojakäytäntö</a></li> <li id="footer-places-about"><a href="/wiki/Wikipedia:Tietoja">Tietoja Wikipediasta</a></li> <li id="footer-places-disclaimers"><a href="/wiki/Wikipedia:Vastuuvapaus">Vastuuvapaus</a></li> <li id="footer-places-wm-codeofconduct"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Universal_Code_of_Conduct">Käytössäännöstö</a></li> <li id="footer-places-developers"><a href="https://developer.wikimedia.org">Kehittäjät</a></li> <li id="footer-places-statslink"><a href="https://stats.wikimedia.org/#/fi.wikipedia.org">Tilastot</a></li> <li id="footer-places-cookiestatement"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Cookie_statement">Evästekäytäntö</a></li> <li id="footer-places-mobileview"><a href="//fi.m.wikipedia.org/w/index.php?title=Hakurakenne&mobileaction=toggle_view_mobile" class="noprint stopMobileRedirectToggle">Mobiilinäkymä</a></li> </ul> <ul id="footer-icons" class="noprint"> <li id="footer-copyrightico"><a href="https://wikimediafoundation.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><img src="/static/images/footer/wikimedia-button.svg" width="84" height="29" alt="Wikimedia Foundation" loading="lazy"></a></li> <li id="footer-poweredbyico"><a href="https://www.mediawiki.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><img src="/w/resources/assets/poweredby_mediawiki.svg" alt="Powered by MediaWiki" width="88" height="31" loading="lazy"></a></li> </ul> </footer> <script>(RLQ=window.RLQ||[]).push(function(){mw.log.warn("This page is using the deprecated ResourceLoader module \"codex-search-styles\".\n[1.43] Use a CodexModule with codexComponents to set your specific components used: https://www.mediawiki.org/wiki/Codex#Using_a_limited_subset_of_components");mw.config.set({"wgHostname":"mw-web.codfw.main-f69cdc8f6-vlr7t","wgBackendResponseTime":164,"wgPageParseReport":{"limitreport":{"cputime":"0.058","walltime":"0.167","ppvisitednodes":{"value":367,"limit":1000000},"postexpandincludesize":{"value":5302,"limit":2097152},"templateargumentsize":{"value":244,"limit":2097152},"expansiondepth":{"value":8,"limit":100},"expensivefunctioncount":{"value":3,"limit":500},"unstrip-depth":{"value":0,"limit":20},"unstrip-size":{"value":7651,"limit":5000000},"entityaccesscount":{"value":0,"limit":400},"timingprofile":["100.00% 135.983 1 -total"," 14.28% 19.415 3 Malline:Verkkoviite"," 11.29% 15.355 1 Malline:Viitteet"," 8.00% 10.879 3 Malline:Kirjaviite"," 3.43% 4.664 1 Malline:K-en"," 2.52% 3.424 1 Malline:En"," 1.46% 1.982 1 Malline:K"," 1.40% 1.904 2 Malline:Wayback"," 1.25% 1.697 1 Malline:Kielisymboli"]},"scribunto":{"limitreport-timeusage":{"value":"0.006","limit":"10.000"},"limitreport-memusage":{"value":872803,"limit":52428800}},"cachereport":{"origin":"mw-web.eqiad.main-587f7d4878-c9k8g","timestamp":"20241120103113","ttl":2592000,"transientcontent":false}}});});</script> <script type="application/ld+json">{"@context":"https:\/\/schema.org","@type":"Article","name":"Hakurakenne","url":"https:\/\/fi.wikipedia.org\/wiki\/Hakurakenne","sameAs":"http:\/\/www.wikidata.org\/entity\/Q80585","mainEntity":"http:\/\/www.wikidata.org\/entity\/Q80585","author":{"@type":"Organization","name":"Wikimedia-hankkeiden muokkaajat"},"publisher":{"@type":"Organization","name":"Wikimedia Foundation, Inc.","logo":{"@type":"ImageObject","url":"https:\/\/www.wikimedia.org\/static\/images\/wmf-hor-googpub.png"}},"datePublished":"2006-05-12T19:18:14Z","image":"https:\/\/upload.wikimedia.org\/wikipedia\/commons\/b\/b3\/Assosiaatiotaulu.svg","headline":"abstrakti tietotyyppi, joka kuvaa avaimia arvoiksi"}</script> </body> </html>