Inhaltsverzeichnis
3 4 5 6 7 1 2
Nach dem Login kopieren
Erläuterung des obigen Codes

" >
3 4 5 6 7 1 2
Nach dem Login kopieren
Erläuterung des obigen Codes

Heim Backend-Entwicklung C++ Umkehralgorithmus für die Array-Rotation, geschrieben in C++

Umkehralgorithmus für die Array-Rotation, geschrieben in C++

Aug 28, 2023 pm 11:13 PM
旋转 c编程 逆转算法 数组

Umkehralgorithmus für die Array-Rotation, geschrieben in C++

In dem gegebenen Problem haben wir ein Array und müssen das Array mit einem Inversionsalgorithmus wie −

Input : arr[] = [1, 2, 3, 4, 5, 6, 7], d = 2
Output : arr[] = [3, 4, 5, 6, 7, 1, 2]
Explanation : As you can see we have to rotate this array by d = 2 but our main task is to achieve this by using a reversal technique.
Nach dem Login kopieren
um d Elemente drehen. Wir haben einige Berechnungen zur Drehung des Arrays mit der Inversionstechnik durchgeführt und Schlussfolgerung:

    Zuerst kehren wir die ersten d Elemente des Arrays um.
  • Zweitens invertieren wir die restlichen Elemente.
  • Drittens kehren wir das gesamte Array um.
Durch die Anwendung dieser drei Schritte können wir das gedrehte Array erhalten.

Lösungsmethode

In diesem Problem schreiben wir zunächst eine Funktion, die die Elemente umkehrt. Anschließend folgen wir den oben genannten Schritten.

Beispiel

#include <bits/stdc++.h>
using namespace std;

void reverseArray(int arr[], int start, int end) { // our reversal algorithm
   while (start < end) { // if start becomes equal to end we break the loop
      int temp = arr[start];
      arr[start] = arr[end];
      arr[end] = temp;
      start++;
      end--;
   }
   return ;
}
void Rotate(int arr[], int d, int n) { // rotation function
   if (d == 0) // no rotation required
      return;
   d = d % n; // when d becomes equal to n so our array comes to its original form
   reverseArray(arr, 0, d - 1); // reversing first d elements
   reverseArray(arr, d, n - 1); // reversing the remaining elements
   reverseArray(arr, 0, n - 1); // reversing the whole array

   return ;
}
int main() {
   int arr[] = { 1, 2, 3, 4, 5, 6, 7 }; // given array
   int n = sizeof(arr) / sizeof(arr[0]); // size of our array
   int d = 2;
   Rotate(arr, d, n);
   for(int i = 0; i < n; i++) // printing the array
      cout << arr[i] << " ";
   cout << "\n";
   return 0;
}
Nach dem Login kopieren

Ausgabe

3 4 5 6 7 1 2
Nach dem Login kopieren
Erläuterung des obigen Codes

In der obigen Methode erstellen wir zunächst eine Inversionstechnik, die drei Parameter akzeptiert, d. h. Array, Startindex und Endindex, und uns umwandelt. Das Array ist umgekehrt Startposition bis zur Endposition. Da wir den Algorithmus bereits entwickelt haben, werden wir diese Funktion verwenden, um den Algorithmus anzuwenden. Zuerst kehren wir die ersten d Elemente um. Dann kehren wir die verbleibenden Elemente um und schließlich kehren wir das gesamte Array um. Dadurch wird unser Array um d Positionen gedreht. In der Rotationsfunktion setzen wir d auf d % n. Denn wenn wir die ersten n Elemente des Arrays drehen, erhalten wir die gleiche Antwort wie zuvor, also nehmen wir d modulo n.

Fazit

In diesem Artikel haben wir ein Problem bei der Anwendung des Inversionsalgorithmus für die Array-Rotation gelöst. Wir haben auch ein C++-Programm und die vollständige (normale) Lösung dieses Problems kennengelernt. Wir können das gleiche Programm in anderen Sprachen wie C, Java, Python und anderen Sprachen schreiben. Ich hoffe, dieser Artikel ist hilfreich für Sie.

Das obige ist der detaillierte Inhalt vonUmkehralgorithmus für die Array-Rotation, geschrieben in C++. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So drehen Sie Word-Bilder So drehen Sie Word-Bilder Mar 19, 2024 pm 06:16 PM

Wenn wir die Word-Office-Software zur Dokumentenverarbeitung verwenden, müssen wir häufig einige Bilder und andere Materialien in das Dokument einfügen. Um jedoch ein schönes Layout zu erzielen, müssen wir auch ein spezielles Layout für die Bilder durchführen, darunter auch die Rotationsverarbeitung Die grundlegendste Schriftsatzverarbeitung ist jedoch für einige Neulinge am Arbeitsplatz, die gerade erst mit der Office-Software Word in Berührung gekommen sind, möglicherweise nicht in der Lage, Bilder in Word-Dokumenten zu verarbeiten. Im Folgenden erfahren Sie, wie Sie Bilder in Word drehen. Wir hoffen, dass es für Sie hilfreich und inspirierend ist. 1. Zuerst öffnen wir ein Word-Dokument und klicken dann auf die Schaltfläche „Bild einfügen“ in der Menüleiste, um ein zufälliges Bild auf dem Computer einzufügen, um unsere Bedienung und Demonstration zu erleichtern. 2. Wenn wir das Bild drehen möchten, müssen wir dies tun

So erzielen Sie mit Vue stereoskopische 3D-Rotationseffekte So erzielen Sie mit Vue stereoskopische 3D-Rotationseffekte Sep 19, 2023 am 08:42 AM

So erzielen Sie mit Vue dreidimensionale 3D-Rotationseffekte. Als beliebtes Front-End-Framework spielt Vue.js eine wichtige Rolle bei der Entwicklung dynamischer Webseiten und Anwendungen. Es bietet eine intuitive und effiziente Möglichkeit, interaktive Schnittstellen zu erstellen und ist einfach zu integrieren und zu erweitern. In diesem Artikel wird erläutert, wie Sie mit Vue.js einen beeindruckenden stereoskopischen 3D-Rotationseffekt implementieren, und es werden spezifische Codebeispiele bereitgestellt. Bevor Sie beginnen, stellen Sie bitte sicher, dass Sie Vue.js installiert haben und mit der grundlegenden Verwendung von Vue.js vertraut sind. Wenn Sie immer noch

Verwenden Sie C++, um Code zu schreiben, um die N-te nichtquadratische Zahl zu finden Verwenden Sie C++, um Code zu schreiben, um die N-te nichtquadratische Zahl zu finden Aug 30, 2023 pm 10:41 PM

Wir alle kennen Zahlen, die nicht das Quadrat einer Zahl sind, wie zum Beispiel 2, 3, 5, 7, 8 usw. Es gibt N nichtquadratische Zahlen und es ist unmöglich, jede Zahl zu kennen. In diesem Artikel erklären wir alles über quadratlose oder nichtquadratische Zahlen und Möglichkeiten, die N-te nichtquadratische Zahl in C++ zu finden. N-te nichtquadratische Zahl Wenn eine Zahl das Quadrat einer ganzen Zahl ist, wird die Zahl als perfektes Quadrat bezeichnet. Einige Beispiele für perfekte Quadratzahlen sind -1isquadratvon14isquadratvon29isquadratvon316isquadratvon425isquadratvon5. Wenn eine Zahl nicht das Quadrat einer ganzen Zahl ist, wird die Zahl als nichtquadratisch bezeichnet. Die ersten 15 nichtquadratischen Zahlen sind beispielsweise -2,3,5,6,

Tipps und Methoden zum Implementieren von Ladeanimationseffekten mit CSS Tipps und Methoden zum Implementieren von Ladeanimationseffekten mit CSS Oct 19, 2023 am 10:42 AM

CSS-Techniken und -Methoden zur Implementierung von Ladeanimationseffekten Mit der Entwicklung des Internets ist die Ladegeschwindigkeit zu einem wichtigen Indikator für die Benutzererfahrung geworden. Um das Nutzererlebnis beim Laden der Seite zu verbessern, verwenden wir in der Regel Ladeanimationseffekte, um die Interaktivität und Attraktivität der Seite zu erhöhen. Als eine der wichtigsten Technologien in der Front-End-Entwicklung bietet CSS viele Techniken und Methoden, um Ladeanimationseffekte zu erzielen. In diesem Artikel werden mehrere gängige Techniken und Methoden zum Implementieren von CSS-Ladeanimationseffekten vorgestellt und entsprechende Codebeispiele bereitgestellt. Spin-Loading-Animation Spin-Loading-Animation ist eine

So skalieren und drehen Sie Bilder mit Python So skalieren und drehen Sie Bilder mit Python Aug 17, 2023 pm 10:52 PM

So verwenden Sie Python zum Skalieren und Drehen von Bildern Einführung: Heutzutage verwenden wir häufig Bilder, um unser Webdesign, unsere mobilen Anwendungen, sozialen Medien und andere Szenarien zu bereichern. In der Bildverarbeitung sind Skalierung und Drehung zwei häufige Anforderungen. Python stellt als Skriptsprache und leistungsstarkes Bildverarbeitungstool viele Bibliotheken und Methoden zur Verfügung, um diese Aufgaben zu bewältigen. In diesem Artikel wird die Verwendung von Python zum Skalieren und Drehen von Bildern vorgestellt und Codebeispiele bereitgestellt. 1. Bilder zoomen Das Zoomen von Bildern ist einer der grundlegenden Vorgänge beim Anpassen der Bildgröße.

So implementieren Sie mit Layui Funktionen zum Zuschneiden und Drehen von Bildern So implementieren Sie mit Layui Funktionen zum Zuschneiden und Drehen von Bildern Oct 26, 2023 am 09:39 AM

So verwenden Sie Layui zum Implementieren von Funktionen zum Zuschneiden und Drehen von Bildern 1. Hintergrundeinführung In der Webentwicklung stoßen wir häufig auf Szenarien, die das Zuschneiden und Drehen von Bildern erfordern, z. B. das Hochladen von Avataren, Bildbearbeitung usw. Layui ist ein leichtes Front-End-Framework, das umfangreiche UI-Komponenten und benutzerfreundliche APIs bereitstellt und sich besonders für die schnelle Erstellung von Webanwendungen eignet. In diesem Artikel wird erläutert, wie Sie mit Layui Funktionen zum Zuschneiden und Drehen von Bildern implementieren, und es werden spezifische Codebeispiele bereitgestellt. 2. Vorbereitung der Umgebung Bevor Sie beginnen, müssen Sie bestätigen, dass die folgende Umgebung bereit ist:

So drehen Sie den Rucksackhelden So drehen Sie den Rucksackhelden Mar 15, 2024 pm 03:30 PM

Spieler können ihr Sichtfeld drehen, wenn sie in Backpack Hero spielen. Viele Spieler wissen nicht, wie man Backpack Hero dreht. Klicken Sie auf das Einstellungssymbol in der unteren rechten Ecke der Hauptoberfläche, um die Objektivsteuerung zu finden und einzuschalten die Option zur automatischen Perspektivanpassung, um sie anzupassen. So drehen Sie Backpack Hero: 1. Klicken Sie nach dem Betreten des Spiels auf das Symbol „Einstellungen“ in der unteren rechten Ecke der Hauptoberfläche. 2. Suchen Sie in der Einstellungsoberfläche nach „Objektivsteuerung“. Dort sehen Sie, dass es eine „Option zur automatischen Winkelanpassung“ gibt. 3. Aktivieren Sie diesen Schalter, um eine automatische Drehung des Sichtfelds zu ermöglichen. Wenn Sie sich im Kampf befinden oder komplexe Operationen durchführen, können Sie diese Funktion aktivieren, um die Beobachtung der Kampfsituation zu erleichtern. 4. Wenn Sie Rotationsvorgänge während der Bewegung ausführen möchten, können Sie dies auch tun. Suchen Sie einfach in den Einstellungen nach dem Gyroskop und aktivieren Sie „Beim Bewegen auf manuelles Zielen umschalten“.

Kann CSS Text drehen lassen? Kann CSS Text drehen lassen? Feb 02, 2023 am 10:01 AM

CSS kann Text drehen: 1. Erstellen Sie eine neue HTML-Datei. 2. Verwenden Sie das Span-Tag, um eine Textzeile zu erstellen. 4. Fügen Sie dem Span-Tag ein Klassenattribut hinzu. Definieren Sie im CSS-Tag Inside den Stil des Span-Tags durch die Klasse und legen Sie es als Element auf Blockebene fest. 5. Verwenden Sie das Transformationsattribut und verwenden Sie „Rotate“, um die Span-Rotation auf einen bestimmten Winkel festzulegen.

See all articles