Ich möchte eine Warteschlange von Zeichenfolgen sortieren.Warteschlange Sortierung
nur Funktionen in meinem arsenel sind:
queue.count() - returns size
queue.pop() - return head, delete head
queue.push(String str) - add string at head
queue.get(int index) - return value stored at index
queue object - original strings stored in here
temp object - sorted strings should go here
temp1 object - temporary queue for help with sorting
Ich habe die Warteschlange wie folgt initialisiert:
String a[] = {"First", "third", "second"};
for (int i = 0; i < 3; i++)
queue.push(a[i]);
ich versucht habe und diesen Code geschrieben:
temp.push(queue.peek());
for (int i = 0; i < queue.count(); i++)
{
for (int j = 0; j < temp.count(); j++)
{
if (temp.get(j) != queue.get(i))
{
if (temp.get(j) > queue.get(i))
{
temp.push(queue.get(i));
}
else
{
for (int k = 0; k < temp.count(); k++)
temp1.push(temp.pop());
temp.push(queue.get(i));
for (int k = 0; k < temp1.count(); k++)
temp.push(temp1.pop());
}
}
}
}
sollte es Rückkehr:
erste
Sekunden
dritte
Aber es gibt:
erste
Sekunden
dritte
dritte
Sekunde
Wenn Sie eine sortierte "Warteschlange" möchten, dann sehen Sie sich die falsche Datenstruktur an. Warteschlangen werden in der Regel nicht sortiert, sie sind die Ersten. Eine sortierte Warteschlange ist ein Oxymoron. –
Ich möchte es sortieren: P keine andere Option verfügbar. Bitte helfen Sie –
Warteschlange der Zeichenfolgen: P –