GeeksforGeeks

Låt oss först klargöra frågan. Det finns inget enkelt sätt att bli bra på någonting men det finns ett effektivt sätt att göra allting.

Låt oss försöka förstå skillnaden mellan lätt och effektivt här med hjälp av en programmeringsfråga! Tänk på problemet ”Sökning av ett element i en sorterad matris”.

  • Person A löser ovanstående problem med hjälp av algoritmen Linjär sökning.
  • Person B löser ovanstående problem med hjälp av algoritmen Binär sökning.

Person A löste alltså här problemet på ett enkelt sätt men person B löste problemet på ett effektivt sätt.

Nu beror det effektiva sättet att lära sig datastrukturer och algoritmer på flera faktorer:

  1. Dina förkunskaper om programmeringsspråk och grundläggande DS och Algos.
  2. Syftet för vilket du vill lära dig det.
  3. Resurserna du har tillgång till.
  4. En perfekt guide!

Låt oss nu ta en djupare titt på var och en av de punkter som lyfts fram ovan:

  • Förkunskaper om DS och Algo: Om du redan är väl bevandrad i de grundläggande datastrukturerna som Arrays, länkade listor osv. och några av de grundläggande algoritmerna som sortering, sökning osv. kommer du jämförelsevis att behöva mycket mindre tid än en nybörjare eftersom du redan kan grunderna. Om du till exempel inte ens förstår det programmeringsexempel som nämns i början av artikeln har du en lång väg att gå.
  • Syftet med att lära sig DS och Algo: Det beror också på i vilket syfte du vill förbättra dina kunskaper om datastrukturer. Vissa människor lär sig dem för anställningsintervjuer, andra för tävlingsprogrammering och andra för att skaffa sig kunskap. Om du förbereder dig för anställningsintervjuer har du en begränsad uppsättning datastrukturer att lära dig som oftast frågas i intervjuerna, om du vill bli en bra konkurrerande programmerare måste du fokusera på komplexa datastrukturer som segmentträd, Fenwik-träd, binära indexerade träd etc.
  • Tillgängliga resurser: Resurser spelar en viktig roll för att lära sig något. Du behöver en uppsättning bra handledningar som är tillräckligt beskrivande för att klargöra alla begrepp från grundläggande till avancerade. Du måste också ha en populär uppsättning frågor för att öva på den kunskap du har fått.
  • En guide: Låt oss säga att du har listat ut alla ovanstående tre punkter. Du vet vad du vill lära dig, du vet i vilket syfte du vill lära dig och du har också alla resurser och handledningar för att göra det. Men du är fortfarande förvirrad över många saker som ”Var ska jag börja?”, ”Hur ska jag börja?” osv. Så du behöver någon som vägleder dig genom processen. Det vill säga det måste finnas någon som hjälper dig att använda de tillgängliga resurserna på ett effektivt sätt.

Lösning på ovanstående problem: På GeeksforGeeks har vi redan en stor samling handledningar och problem som är baserade på datastrukturer och algoritmer, skrivna av några bra konkurrerande programmerare runt om i världen. Vi har också många tidigare, pågående och kommande kurser om datastrukturer och algoritmer som kan hittas på GeeksforGeeks-kurser.

Om du förbereder dig för intervjuer rekommenderar vi att du går igenom följande länkar:

  • Guide för placeringsförberedelser
  • En steg-för-steg-guide för placeringsförberedelser
  • De 10 bästa algoritmerna i intervjufrågor
  • De 10 bästa algoritmerna i intervjufrågor | Set 2
  • Hur förbereder man sig för de främsta multinationella företagen?
  • Sudo Placement
  • -> Intervjuförberedelsearkiv

Om du är en blivande tävlingsprogrammerare är det ett måste att besöka nedanstående länkar:

  • Hur börjar man med tävlingsprogrammering?
  • Hur blir man en mästare i tävlingsprogrammering?
  • Ett bättre sätt att närma sig tävlingsprogrammering
  • Tips and Tricks for Competitive Programmers
  • Tips and Tricks for Competitive Programmers | Set 2
  • Advanced Datastrukturer
  • Top 10 algoritmer och datastrukturer för tävlingsprogrammering
  • -> Arkiv för tävlingsprogrammering

Prova alla-nya GeeksforGeeks Premium!

Practice Tags :

Lämna ett svar

Din e-postadress kommer inte publiceras.