Inhaltsverzeichnis
Wie man die Lösung findet
Beispiel
Ausgabe
Fazit
Heim Backend-Entwicklung C++ Inversionsalgorithmus für die Rechtsdrehung eines Arrays, geschrieben in C++

Inversionsalgorithmus für die Rechtsdrehung eines Arrays, geschrieben in C++

Sep 08, 2023 pm 08:17 PM
C -Programmierung Rechtsdrehung des Arrays Inversionsalgorithmus

Inversionsalgorithmus für die Rechtsdrehung eines Arrays, geschrieben in C++

In diesem Artikel lernen wir den Umkehralgorithmus kennen, um ein gegebenes Array um k Elemente nach rechts zu drehen, wie z. B. −

Input : arr[ ] = { 4, 6, 2, 6, 43, 7, 3, 7 }, k = 4
Output : { 43, 7, 3, 7, 4, 6, 2, 6 }
Explanation : Rotating each element of array by 4-element to the right gives { 43, 7, 3, 7, 4, 6, 2, 6 }.

Input : arr[ ] = { 8, 5, 8, 2, 1, 4, 9, 3 }, k = 3
Output : { 4, 9, 3, 8, 5, 8, 2, 1 }

Wie man die Lösung findet

indem man jedes Element nach rechts verschiebt und den Vorgang k-mal wiederholt , können Sie dieses Problem leicht lösen. Dies wird jedoch mehr Zeit in Anspruch nehmen, da die zeitliche Komplexität O(k * N) beträgt.

Inversionsalgorithmus: Inversion ist die Umkehrung eines Arrays. Das Drehen eines Arrays kann durch Umkehren bestimmter Elementbereiche erfolgen. Gemäß diesem Algorithmus -

  • Kehren Sie zunächst das gesamte Array um.
  • Ändern Sie k modulo k modulo N (Array-Größe), da k größer als N ist.
  • Kehren Sie die ersten k Elemente des Arrays um, um sie in die richtige Reihenfolge zu bringen.
  • Dann kehren Sie den Bereich der restlichen Elemente um, also von k bis N-1.
  • li>

Beispiel

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

void reverse(int nums[], int start,int end) {
   int temp=0;
   // reversing array with swapping start element with end element.
   while(start<=end){
      temp=nums[end];
      nums[end]=nums[start];
      nums[start]=temp;
      start++;
      end--;
   }
}

int main() {
   int arr[] = {4, 6, 2, 6, 43, 7, 3, 6, 2, 4, 5 };

   int N = sizeof(arr)/sizeof(arr[0]);

   int k = 4;
   // reversing whole array
   reverse(arr, 0, N-1);
   k = k%N;
   // reversing element range of 0 to k-1.

   reverse(arr, 0, k-1);
   // reversing element range of k to last element.
   reverse(arr, k, N-1);
   cout << "Array after rotating by k-elements : ";
   for(int i = 0;i<N;i++)
      cout << arr[i] << " ";
   return 0;
}

Ausgabe

Array after rotating by k-elements : 6 2 4 5 4 6 2 6 43 7 3

Fazit

In diesem Artikel haben wir das Problem der Rechtsdrehung eines Arrays um k Elemente unter Verwendung eines Inversionsalgorithmus besprochen. Wir haben besprochen, was der Inversionsalgorithmus ist und wie man ihn implementiert, um dieses Problem zu lösen. Wir haben auch C++-Code besprochen, um dieses Problem zu lösen. Wir können diesen Code in jeder anderen Sprache wie C, Java, Python usw. schreiben. Ich hoffe, dieser Artikel ist hilfreich für Sie.

Das obige ist der detaillierte Inhalt vonInversionsalgorithmus für die Rechtsdrehung eines Arrays, 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

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

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.

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

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)

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,

Inversionsalgorithmus für die Rechtsdrehung eines Arrays, geschrieben in C++ Inversionsalgorithmus für die Rechtsdrehung eines Arrays, geschrieben in C++ Sep 08, 2023 pm 08:17 PM

In diesem Artikel lernen wir den Umkehralgorithmus kennen, um das gegebene Array um k Elemente nach rechts zu drehen, zum Beispiel −Input:arr[]={4,6,2,6,43,7,3,7}, k= 4Ausgabe:{43,7,3,7,4,6,2,6}Erklärung:Das Drehen jedes Elements des Arrays um 4 Elemente nach rechts ergibt {43,7,3,7,4,6,2,6}.Eingabe:arr[]= {8 ,5,8,2,1,4,9,3},k=3Ausgabe:{4,9,3,8,5,8,2,1} Finden Sie die Lösung

Ermitteln Sie in der C-Programmierung die Fläche eines Kreises Ermitteln Sie in der C-Programmierung die Fläche eines Kreises Aug 25, 2023 pm 10:57 PM

Ein Kreis ist eine geschlossene Figur. Alle Punkte auf einem Kreis haben den gleichen Abstand von einem Punkt innerhalb des Kreises. Der Mittelpunkt wird Kreismittelpunkt genannt. Der Abstand von einem Punkt zum Mittelpunkt eines Kreises wird Radius genannt. Die Fläche ist eine quantitative Darstellung der Dimensionsspanne einer geschlossenen Figur. Die Fläche eines Kreises ist die Fläche, die innerhalb der Abmessungen des Kreises eingeschlossen ist. Die Formel zur Berechnung der Fläche eines Kreises lautet Fläche=π*r*r. Um die Fläche zu berechnen, geben wir den Radius des Kreises als Eingabe ein. Wir verwenden die Formel zur Berechnung der Fläche, Algorithmus SCHRITT 1: Übernehmen Sie den Radius als Eingabe vom Benutzer mit stdin. SCHRITT 2 : Berechnen Sie die Fläche des Kreises mit Fläche=(

Ermitteln Sie in C++ die Anzahl der Quadrupel, deren erste drei Terme arithmetische Folgen und deren letzte drei Terme geometrische Folgen sind. Ermitteln Sie in C++ die Anzahl der Quadrupel, deren erste drei Terme arithmetische Folgen und deren letzte drei Terme geometrische Folgen sind. Aug 30, 2023 pm 02:09 PM

In diesem Artikel beschreiben wir alle Möglichkeiten, Quaternionen zu finden, indem wir A.P. für die ersten drei Terme und G.P. für die letzten drei Terme verwenden. Zunächst erklären wir die grundlegenden Definitionen der arithmetischen Progression (A.P.) und der geometrischen Progression (G.P.). Arithmetische Progression (A.P.) – Es handelt sich um eine Zahlenfolge, bei der die gemeinsame Differenz (d) gleich oder konstant ist, was bedeutet, dass die Differenz zweier aufeinanderfolgender Zahlen konstant ist. Zum Beispiel: 1,3,5,7,9|d=2 Geometrische Progression (G.P.) – Dies ist eine Zahlenfolge, bei der das gemeinsame Verhältnis (r) gleich ist, was bedeutet, dass wir die vorherige Zahl mit einer festen Zahl multiplizieren können Nummer. Zum Beispiel: 3, 6, 12, 24, ....|r=2 In diesem Problem müssen wir bestimmen, wie viele N ganze Zahlen im Array arr[] enthalten sind

Schreiben Sie mit C++ einen Code, um die Anzahl der Subarrays mit denselben Mindest- und Höchstwerten zu ermitteln Schreiben Sie mit C++ einen Code, um die Anzahl der Subarrays mit denselben Mindest- und Höchstwerten zu ermitteln Aug 25, 2023 pm 11:33 PM

In diesem Artikel werden wir C++ verwenden, um das Problem zu lösen, die Anzahl der Subarrays zu ermitteln, deren Maximal- und Minimalwert gleich sind. Das Folgende ist ein Beispiel für das Problem: −Input:array={2,3,6,6,2,4,4,4}Output:12Explanation:{2},{3},{6},{6}, {2 },{4},{4},{4},{6,6},{4,4},{4,4}und {4,4,4}sind die Teilarrays, die mit dem gleichen maximalen und minimalen Element gebildet werden können. Eingabe: array={3, 3, 1,5,

Kehren Sie die Gruppierung doppelt verknüpfter Listen nach gegebener Größe mit C++ um Kehren Sie die Gruppierung doppelt verknüpfter Listen nach gegebener Größe mit C++ um Sep 04, 2023 am 09:49 AM

In diesem Problem erhalten wir einen Zeiger auf den Kopf der verknüpften Liste und eine ganze Zahl k. In einer Gruppe der Größe k müssen wir die verknüpfte Liste umkehren. Zum Beispiel -Input:1<->2<->3<->4<->5(doublylinkedlist),k=3Output:3<->2<->1<->5<->4 sucht nach Lösungen Methode In diesem Problem werden wir einen rekursiven Algorithmus formulieren, um dieses Problem zu lösen. Bei dieser Methode verwenden wir die Rekursion und lösen das Problem mithilfe der Rekursion. Beispiel#include<iostream&

Ermitteln Sie in C++ die Anzahl der Subarrays, deren Summe kleiner als K ist Ermitteln Sie in C++ die Anzahl der Subarrays, deren Summe kleiner als K ist Sep 07, 2023 pm 03:25 PM

In diesem Beitrag werden wir C++ verwenden, um die Anzahl der Subarrays zu ermitteln, deren Summe kleiner als K ist. In diesem Problem haben wir ein Array arr[] und eine Ganzzahl K. Jetzt müssen wir die Subarrays finden, deren Summe kleiner als K ist. Hier ist das Beispiel −Input:arr[]={1,11,2,3,15}K=10Output:4{1},{2},{3}and{2,3}, um die Lösung zu finden. Jetzt haben wir Zur Lösung des gegebenen Problems werden zwei verschiedene Ansätze verwendet: Brute Force. Bei diesem Ansatz durchlaufen wir alle Unterarrays und berechnen deren Summe. Wenn die Summe kleiner als k ist, vergleichen wir sie mit k, um unsere Antwort zu erhöhen. Beispiel#include<

In C++ geschrieben, finden Sie ein Zahlenpaar in einer Matrix mit einer bestimmten Summe In C++ geschrieben, finden Sie ein Zahlenpaar in einer Matrix mit einer bestimmten Summe Sep 09, 2023 pm 06:05 PM

In diesem Artikel besprechen wir das Programm zum Finden von Paaren mit einer bestimmten Summe in einer bestimmten Matrix. Zum Beispiel -Input:matrix[n][m]={ {4,6,4,65}, {56,1,12,32}, {4,5,6,44}, {13,9,11 , 25}},SUM=20Ausgabe:Pairexists.Erläuterung:Sum=20isqualtothesumofnumbers9an

See all articles