Heim >Backend-Entwicklung >Python-Tutorial >Teilen Sie Beispiele für Fragen in Python
Bitte berechnen Sie innerhalb von 3 Sekunden einen Datensatz mit geraden Zahlen vor ungeraden Zahlen (beachten Sie, dass Sie keine Schleifen wie „for while“ verwenden)
Das Format ist wie folgt
1, 2, 3, 4, 5, 6, 7, 8, 9, 10
Das Ausgabeergebnis ist
2, 1, 4, 3, 6, 5, 8, 7, 10, 9
Lösungsidee: Da Sie for und while nicht verwenden können, um Schleifenurteile zu schreiben, werden wir dies durch Positionsersetzung behandeln. Solange es um die Position geht, müssen wir zunächst an Indizes und Indizes denken. Der Code lautet wie folgt:
data[0::2] bedeutet, von der ersten Position der Datenliste aus zu beginnen, was der Zahl 1::bedeutung bis zum Ende entspricht Position 2 ist die Zahl 1. Eine Zahl und die zweite Zahl sind durch zwei Ziffern getrennt, das heißt, es werden die ungeraden Zahlen 1, 3, 5, 7, 9 verwendet dass die zweite Zahl in der Datenliste auch ist Es beginnt mit der Zahl 2:: Es bedeutet bis zur Endposition, 2 bedeutet, dass die erste Zahl und die zweite Zahl durch zwei Stellen getrennt sind, also die geraden Zahlen 2, 4 , 6, 8, 10 werden wie unten gezeigt verwendet:
tmp wird hier als temporärer Speicherbereich verwendet, was der Blasensortierungsmethode sehr ähnlich ist. Durch das Speichern der ungeraden Zahlen in der Mitte werden die geraden Zahlen um eine Position nach vorne verschoben, und dann werden die vorübergehend gespeicherten Daten zurückgezogen und an den geraden Positionen platziert und vervollständigt.
Frage 2:
1 5 9 13
2 6 10 143 7 11 15
4 8 12 16
Lösung: Zunächst muss man sich vorstellen, dass das Programm Zeile für Zeile ausgeführt wird Wenn Sie dies sorgfältig herausfinden, beträgt der Unterschied tatsächlich 4. Solange Sie dies herausfinden, ist diese Frage nicht schwer zu lösen. Der Code lautet wie folgt:
Sobald Sie ihn betrachten, wird Ihnen plötzlich klar, dass der Unterschied 4 zwischen ihnen durch die Anzahl der Bereichsschritte gesteuert werden kann Die ausgedruckte Zeile ist 1, 5, 9, 13. Schauen Sie sich die zweite Zeile genau an. Im Vergleich zur ersten Zeile ist die Zahl plus 1. Dann verwenden wir die Funktion von Python, dass der Standardbereich bei 0 beginnt. Fügen Sie einfach jede Zeile hinzu Um einen vertikalen Druck auf der zweiten Ebene zu erreichen, hilft uns print jedes Mal, die Zeile zur Kontrolle und Vervollständigung umzubrechen.
Einige Fragen und Lösungen werden von Zeit zu Zeit aktualisiert.
Gerne können Sie mir auch eine private Nachricht senden, um einige Methoden und Techniken zu besprechen.
Abschließend vielen Dank an alle fürs Zuschauen! ! !
Das obige ist der detaillierte Inhalt vonTeilen Sie Beispiele für Fragen in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!