Dator > hur man förbereder för en programperiod tävling

  • hur man förbereder för en programperiod tävling


  • Programmering kan vara svårt nog när det är en lång tid att slutföra projekt , och än mindre när man måste koka upp en lösning i mindre än en timme under en programperiod tävling . Har du vad som krävs för att konkurrera med resten av tävlingsprogrammering världen ? Det enda sättet att ta reda på är att ta några förberedande steg och få dina kort på en av många olika online kodning platser . Om du kan klippa den-det finns stora pengar att tjäna! Denna artikel kommer att fokusera på utveckling av algoritmer .

    Du behöver :
    Ditt val av språk och kompilator
    . Internetuppkoppling


    1
    Om din nya till programmering tävlingar , hittar du det finns en mängd olika typer av tävlingar som finns idag-. allt från idé och design , till krav skriftligen till algoritmer . Från min egen yrkeserfarenhet , om du kan öva dig att utveckla algoritmer snabbt , kan du lyckas i nästan alla aspekter av programvaruutveckling cykeln

    Steg 1-. Välj ditt språk .

    flesta tävlingar kan du välja mellan några objektorienterade språk-vanligtvis C + + , C # och Java . Syntaktiskt , dessa språk är mycket lika , och ganska mycket alla behöriga i en kan anpassa sig till de andra om det behövs .
    2 .
    flesta programmering konkurrens webbplatser har sina egna online redaktör , eller applet från som att utveckla , kommunicera , eller skicka in kod . Jag tycker att i de flesta fall är detta redaktör inte lämplig för att göra kodning och felsökning som krävs . Se därför till att du har din vanliga utvecklingsmiljö händig och inställningar att göra din kodning och felsökning . Om du inte har en lämplig utvecklingsmiljö hemma , kan du ladda ner Eclipse ( för Java ) gratis, eller någon av Microsofts C + + /C # Express upplagor gratis . Alla är lämpliga för algoritm konkurrens .
    3 .
    När din konfigurerade , översyn av reglerna i tävlingsområdet , och se till att du har några ytterligare rekommenderat plug -in -eller programvara som krävs för tävlingen .
    4
    nu kommer det roliga-vad behöver jag fräscha upp för att kunna konkurrera ? I algoritm tävlingar hittar du mycket användning av följande :

    stränghantering och parsing
    Reguljära uttryck
    diagram och geometriska teori
    Kombinatorik och
    sannolikhet Numeriska som manipulation
    Sorteras
    Talteori problem
    andra matematiska konstruktioner

    Dessa kommer att beskrivas i detalj i kommande steg . .
    5
    Det är ganska uppenbart att du kommer att behöva fräscha upp diskret matematik-och genomförandet av sådana begrepp i kod . Längs vägen är det bra att bygga hjälpare funktioner som kan återanvändas i tävlingar . Ha en bra bibliotek av sådana funktioner kommer att ge dig ett ben upp när tiden är kort . Inte oroa sig, det finns massor av exempel på Internet-men du bör utveckla din egen

    Andra typer av matematiska problem dyker upp också, många med primtal , etc. . . ! Kontrollera att du har en effektiv algoritm för att identifiera primtal innan du börjar .
    6 .
    Kontrollera sedan att du vet de grundläggande sammanfattning sorteringsalgoritmer och kod på några exempel. Inte bara måste din kod kan generera önskad effekt måste den också göra detta i rimlig tid .
    7 .
    Slutligen är det viktigt att du snabbt kan komma åt och utnyttja alla de stränghantering funktioner tillgängliga för dig inom ditt språk bibliotek . Stränghantering och tolkning används överallt , och kan även tillämpas på numeriska set . Som en förlängning av detta , det är mycket bra att ha en referens bredvid dig för grundläggande reguljära uttryck. Ibland är dessa är lättare att använda än manuell tolkning , ibland inte !
    8 .
    Nästa steg är att öva , öva , öva ! Det finns två ställen du kan träna :

    Tävlingsområdet själv . De flesta programmering konkurrens sajter har en lista på tidigare problem och lösningar , och någon metod för att skicka in dina problem för betyg . Jag skulle råd att öva här eftersom det ger dig en känsla för den typ av problem kan du faktiskt stöta på . Men vissa sidor tar lite tid i betygssättning , vilket betyder att du kan få vänta på ditt svar .

    Det andra alternativet är att använda en webbplats som Project Euler . Project Euler är en webbplats som består av cirka 260 problem matematik stil som är avsedda att lösas genom programmering . Den nätta sak om Project Euler är att det finns ett enda svar på varje av de problem , så du vet direkt om du har gjort rätt . Dina framsteg även spåras mot andra . Personligen föredrar jag Project Euler som utgångspunkt för din praktik , eftersom det kommer att tvinga dig in matematiska begrepp omedelbart från det första problemet-och problemen bara att öka i svårigheter eftersom tiden går .
    9 .
    ovan borde räcka för att komma igång , men det enda sättet att verkligen ta reda på om du är redo är att registrera dig och delta i en tävling !

    Lycka till!

    tips och varningar


  • Jag rekommenderar inte programmeringstävlingar till nya eller oerfarna kodare . Dessa tävlingar är en extrem utmaning , även för de med många års erfarenhet
  • Kort , är elegant , snabb lösningar kommer att vinna mer än långsamt , kludgy , lång lösningar-men att du redan visste : epå !

Previous:Vilka är fördelarna med Java uppgradera ? Next:hur man kan förebygga en webbadress visas på ett adressfält





Relaterade artiklar


  • Compaq DL320 specifikationer
  • hur man reparera en Blixt JCD fil
  • eMachines t3958 moderkort specifikationer
  • eMachines w3611 specifikationer
  • hur man kan expandera en dator med bärbara enheter
  • hur reparera förvanskad video i en PowerBook G4
  • hur man hittar en ersättare modem för en Dell Inspiron 3800
  • Hur konvertera ett datum till en unix timestamp php
  • hur man installerar en Garmin inlandsvatten SD-kort
  • hur man uppgraderar en D510-processor