Hem Personliga finanser Simulera Använda abstrakta maskiner med algoritmer - dummies

Simulera Använda abstrakta maskiner med algoritmer - dummies

Video: Two Point Hospital Tipps Und Tricks (Deutsch/German) Mono Biester, Warteschlange, Geister & mehr 2024

Video: Two Point Hospital Tipps Und Tricks (Deutsch/German) Mono Biester, Warteschlange, Geister & mehr 2024
Anonim

Ju fler operationer en algoritm kräver desto mer komplex är den. Komplexitet är ett mått på algoritmseffektivitet när det gäller tidsanvändning eftersom varje operation tar lite tid. Med tanke på samma problem är komplexa algoritmer generellt mindre gynnsamma än enkla algoritmer eftersom komplexa algoritmer kräver mer tid.

Tänk på de tider då körningshastigheten gör skillnaden, till exempel inom medicinsk eller finansiell sektor, eller när man flyger på en automatisk pilot på en flygplan eller rymdraket. Mätningsalgoritmkomplexitet är en utmanande uppgift, men en nödvändig om du vill använda den rätta lösningen. Den första mättekniken använder abstrakta maskiner som Random Access Machine (RAM).

RAM står också för Random Access Memory, vilket är det interna minnet som datorn använder när program körs. Även om den använder samma akronym är en slumpmässig åtkomstmaskin något helt annorlunda.

Abstrakta maskiner är inte riktiga datorer, men teoretiska, datorer som föreställs i deras funktion. Du använder abstrakta maskiner för att överväga hur bra en algoritm skulle fungera på en dator utan att testa den på den riktiga saken, dock bunden av vilken maskinvara du skulle använda. En RAM-dator utför grundläggande aritmetiska operationer och interagerar med information i minnet, det är allt. Varje gång en RAM-dator gör någonting tar det ett tidssteg (en tidsenhet). När du utvärderar en algoritm i en RAM-simulering räknar du tidssteg med följande procedur:

  1. Räkna varje enkel operation (aritmetiska sådana) som ett tidssteg.
  2. Bryt komplexa operationer till enkla aritmetiska operationer och räkna tidssteg som definieras i steg 1.
  3. Räkna varje dataåtkomst från minnet som ett steg.

För att utföra denna redovisning skriver du en pseudokodversion av din algoritm och utför dessa steg med papper och penna. I slutändan är det ett enkelt tillvägagångssätt baserat på en grundläggande ide om hur datorer fungerar, en användbar approximation som du kan använda för att jämföra lösningar oavsett maskinens kraft och hastighet eller det programmeringsspråk du använder.

Att använda en simulering skiljer sig från att köra algoritmen på en dator eftersom du använder en standard och fördefinierad ingång. Reella datormätningar kräver att du kör koden och verifiera tiden som krävs för att köra den. Körningskod på en dator är faktiskt en riktmärke, en annan form av effektivitetsmätning, där du också tar hänsyn till applikationsmiljön (t.ex. vilken typ av hårdvara som används och programmets implementering).En riktmärke är användbar men saknar generalisering. Tänk till exempel hur nyare hårdvara snabbt kan utföra en algoritm som tog åldrar på din tidigare dator.

Simulera Använda abstrakta maskiner med algoritmer - dummies

Redaktörens val

Jewish Funeral Traditions - dummies

Jewish Funeral Traditions - dummies

Judiska begravningar sker vanligen i en synagoge, begravningshem eller på en kyrkogård. Med tradition är judiska begravningar enkla (symboliserar tron ​​att människor är alla lika i döden), men de varierar mycket och har ingen uppsättning liturgi. Att skicka blommor till ett begravnings- eller sorgshem är starkt avskräckt i judendomen. Inte bara kommer ...

Identifiera komplicerade grävande dummies

Identifiera komplicerade grävande dummies

Komplicerat roende är det tekniska namnet som sorgproffs ger till en sorgprocess som sitter fast vid något tillfälle , vilket gör det omöjligt för de förlorade att framgångsrikt starta eller avsluta sorgprocessen. Komplicerat sorg är ofta ett tecken på olösta problem i förhållandet mellan de förlorade och den avlidne som gör det ...

Redaktörens val

Hur man ställer in kartkontroller i Main_iPad. Storyboard i din iOS App - dummies

Hur man ställer in kartkontroller i Main_iPad. Storyboard i din iOS App - dummies

När du har en anpassad vy för MapController i din iOS-app, måste du berätta för iPad-storyboardet att du laddar in din anpassade vy i stället för en UIViewController. Följ dessa steg: Välj Projekt navigator genom att välja Main_iPad. storyboard och välj sedan View Controller i View Controller - Map Scene i dokumentutskriften. ...

Hur man roterar objekt i din iOS-app - dummies

Hur man roterar objekt i din iOS-app - dummies

Här hittar du hur man rotera en vy (i så fall vrid bilen runt) i din iOS-app. För att göra det uppdaterar du den roterande kodstuben du startade med och ersätter den med den fetstilta koden. - (void) rotera {CGAffineTransform transform = CGAffineTransformMakeRotation (M_PI); void (^ animation) () = ^ () {self. bil. transformera = transformera; ...

Hur man ställer in en WeatherController i Main_iPad. storyboard-fil för din iOS-app - dummies

Hur man ställer in en WeatherController i Main_iPad. storyboard-fil för din iOS-app - dummies

Bör du lägga till en ny anpassad vykontroll till din iOS-app innan du fortsätter till dessa steg. Du behöver fortfarande berätta för storyboardet att du vill att den ska ladda den nya anpassade vykontrollen istället för en UIViewController. Följ dessa steg:

Redaktörens val

Spara en grafisk stil i Adobe CS5 Illustrator - dummies

Spara en grafisk stil i Adobe CS5 Illustrator - dummies

Adobe Creative Suite 5 (Adobe CS5) Illustrator tillåter Du sparar en grafisk stil. En grafisk stil är en kombination av alla inställningar du väljer för ett visst filter eller en effekt i Utseendepanelen. Genom att spara informationen i en grafisk stil lagras du dessa attribut så att du snabbt och enkelt kan tillämpa ...

Välj som ett transformationsverktyg i Adobe CS5 Illustrator - dummies

Välj som ett transformationsverktyg i Adobe CS5 Illustrator - dummies

I Adobe Creative Suite 5 (Adobe CS5 ) Illustratör du kan använda markeringsverktyget för att skala och rotera ett valt objekt. Dra begränsningsboxens handtag för att ändra storlek på objektet, eller flytta dig utanför ett handtag och sedan, när markören ändras till en flippig pil (en böjd pil med pilhuvud i båda ändarna), dra till ...

Objekttransformation i Adobe CS5 Illustrator - dummies

Objekttransformation i Adobe CS5 Illustrator - dummies

Verktygen Rotate, Reflect, Scale och Shear i Adobe Creative Suite 5 (Adobe CS5) Illustrator använder alla samma grundläggande steg för att utföra transformationer. Här är fem sätt att transformera ett objekt: en för en godtycklig omvandling och fyra andra för exakta omvandlingar baserat på en numerisk mängd som du anger. Vilkårlig omvandlingsmetod Eftersom detta ...