Söka efter element
Svep för att visa menyn
När du arbetar med arrayer behöver du ofta ta reda på om ett visst värde finns eller var det är placerat. Att söka efter element i en array är en vanlig operation inom programmering, särskilt när du vill lokalisera data, validera indata eller utföra ytterligare åtgärder baserat på förekomsten eller positionen av ett värde. Till exempel kan du vilja kontrollera om en användares ID redan används, eller hitta positionen för en specifik poäng i en lista. Att förstå hur man söker effektivt i arrayer är en viktig färdighet när du arbetar med datamängder.
Program.cs
1234567891011121314151617181920212223242526272829using System; namespace ConsoleApp { public class Program { public static void Main() { int[] numbers = { 10, 25, 30, 47, 58 }; int target = 30; int foundIndex = -1; for (int i = 0; i < numbers.Length; i++) { if (numbers[i] == target) { foundIndex = i; break; } } if (foundIndex != -1) { Console.WriteLine("Number " + target + " found at index " + foundIndex + "."); } } } }
För att hitta ett specifikt värde i en array använder du en loop för att undersöka varje element ett i taget. Inuti loopen kontrollerar ett if-villkor om det aktuella elementet matchar det värde du söker efter. Om en träff hittas kan du notera indexet och oftast sluta söka vidare, eftersom du har hittat det du behöver. Detta tillvägagångssätt är enkelt och fungerar för arrayer av vilken storlek eller typ som helst.
Program.cs
123456789101112131415161718192021222324252627282930313233using System; namespace ConsoleApp { public class Program { public static void Main() { int[] numbers = { 11, 22, 33, 44, 55 }; int target = 99; int foundIndex = -1; for (int i = 0; i < numbers.Length; i++) { if (numbers[i] == target) { foundIndex = i; break; } } if (foundIndex != -1) { Console.WriteLine("Number " + target + " found at index " + foundIndex + "."); } else { Console.WriteLine("Number " + target + " not found in the array."); } } } }
Linjär sökning är en metod för att hitta ett värde i en array genom att kontrollera varje element i tur och ordning, från det första till det sista, tills värdet hittas eller slutet nås.
1. Vad är tidskomplexiteten för en linjär sökning i en array?
2. Hur kan du avgöra om ett värde finns i en array?
3. Vad ska ditt program göra om det sökta värdet inte hittas?
Tack för dina kommentarer!
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal