Hej Finns flera sätt, det lämpligaste är att använda inbyggda funktioner. Det ser dock ut som att du läser detta i någon kurs där läraren är ett pucko, eftersom man inte bör använda arrayer heller. Du måste alltså förmodligen lösa det själv. Hej Ta bort dubletter från array
Ny när det gäller c++.
Har en integer array som jag har sorterat. Det finns ett antal dubletter i arrayen som jag vill ta bort.
Undrar om någon kan hjälpa mig på traven här lite grand.
/FredricSv: Ta bort dubletter från array
Enklaste principen i pseudo-kod blir då typ (helt otestad):
array = {...}
new_array = int[(size of array)]
for(i = 0, j =0; i<max; i++)
{
if(i==0 || array[i] != array[i-1]) {
new_array[j] = array[i];
j++;
}
}
Med den här lösningen kommer new_array vara lika stor som array, men där bara de j första talen är meningsfulla. Du kan därför behöva minska storleken på arrayen också.Sv:Ta bort dubletter från array
Tack, funkar!
Ja jag läser en kurs, jag är nog ett större pucko än vad min lärare är ;-)
När du säger att man inte bör använda arrayer heller, menar du generellt
eller just i detta fallet? Vad kan jag använda istället som är bättre?