Inhaltsverzeichnis
Möglichkeiten, die Lösung zu finden
Effizienter Ansatz
Beispiel
Ausgabe
Schlussfolgerung
Heim Backend-Entwicklung C++ Gibt in einer erweiterten Matrix das vorherige Element in C++ zurück

Gibt in einer erweiterten Matrix das vorherige Element in C++ zurück

Sep 15, 2023 am 09:17 AM
返回 erweiterte Matrix Vorherige

Gibt in einer erweiterten Matrix das vorherige Element in C++ zurück

Besprechen Sie ein Problem anhand der erweiterten Matrix. Eine erweiterte Matrix ist eine Matrix, deren Größe um einen bestimmten Faktor zunimmt.

Hier haben wir eine Zeichenmatrix, deren Größe um ein Vielfaches von 2 erweitert wird, d. h. wenn die Größe der ursprünglichen Matrix N * N beträgt, dann beträgt die Größe der erweiterten Matrix 2N * 2N. Wir erhalten eine Zeichenfolge, die sich bei (i, j) befindet, und wir müssen die Zeichenfolge zurückgeben, die sich bei (i, (j - N - 1)%N) befindet.

Lassen Sie uns das verstehen, indem wir einige anfängliche Erweiterungsmatrizen visualisieren.

Given Matrix -> [ a, b ] [ c, d ], 2 X 2 matrix
Multiplying with { a, b, c, d }
A X [ a, b ]
B X [ a, b ]
C X [ a, b ]
D X [ a, b ]
[ c, d ] [ c, d ] [ c, d ] [ c, d ]

Expanded Matrix -> [ aa, ab, ba, bb ]
[ ac, ad, bc, bd ]
[ ca, cb, da, db ]
[ cc, cd, dc, dd ], 4X4 matrix
To expand again, multiply it by { a, b, c, d } and a matrix of size 8X8 will be formed.

Expanded Matrix - > [ aaa, aab, aba, abb, baa, bab, bba, bbb ]
[ aac, aad, abc, abd, bac, bad, bbc, bbd ]
[ aca, acb, ada, adb, bca, bcb, bda, bdb ]
[ acc, acd, adc, add, bcc, bcd, bdc, bdd ]
[ caa, cab, cba, cbb, daa, dab, dba, dbb ]
[ cac, cad, cbc, cbd, dac, dad, dbc, dbd ]
[ cca, ccb, cda, cdb, dca, dcb, dda, ddb ]
[ ccc, ccd, cdc, cdd, dcc, dcd, ddc, ddd ]
Nach dem Login kopieren

Dies sind zwei anfängliche Erweiterungsmatrizen. Angenommen, wir erhalten eine Zeichenfolge „bcc“, dann müssen wir die gerade verbleibende Sequenz zurückgeben, nämlich „add“. Nehmen wir außerdem an, dass die Matrix zyklisch ist, d. h. wenn die gegebene Sequenz bei (i, 0) liegt, dann wird die Sequenz bei (i, N-1) zurückgegeben.

Input: abb
Output: aba
Explanation: The sequence just left to abb is aba in the 8X8 matrix.

Input: aadc
Output: aacd

Input: abbcd
Output: abbcc
Nach dem Login kopieren

Möglichkeiten, die Lösung zu finden

Denken Sie zuerst über das Problem nach , die einzige Lösung, die mir in den Sinn kommt. Die Lösung besteht darin, eine erweiterte Matrix zu finden, die die angegebene Sequenz enthält, aber nicht sehr komplex aussieht. Wir müssen zuerst die Matrix bilden und dann nach der Sequenz suchen.

Effizienter Ansatz

Nachdem wir uns einige zunächst erweiterte Matrizen angesehen hatten, entdeckten wir ein Muster, durch das wir das vorherige Element sehen konnten. Das heißt,

  • durchläuft die Zeichenfolge ab dem letzten Index.

  • Wenn das Indexelement „b“ oder „d“ ist, ändern Sie es in „a“ oder „c“ und beenden Sie das Durchlaufen des Arrays.

  • Wenn das Indexelement „a“ oder „c“ ist, ändern Sie es in „b“ oder „d“, gehen Sie zum nächsten Index und überprüfen Sie ihn.

Beispiel

C++-Code der oben genannten Methode

#include <bits/stdc++.h>
using namespace std;
int main (){
   string seq = "abbcd";
   int n = seq.length ();
   // traverse through the string from last.
   for (int i = n; i >= 0; i--){
      // if the element is b or d, change them and stop traversing.
      if (seq[i] == &#39;b&#39;){
      seq[i] = &#39;a&#39;;
      break;
   }
   if (seq[i] == &#39;d&#39;){
      seq[i] = &#39;c&#39;;
      break;
   }
   // if an element is b or d, change them and move to the next element.
   if (seq[i] == &#39;a&#39;)
      seq[i] = &#39;b&#39;;
   else if (seq[i] == &#39;c&#39;)
      seq[i] = &#39;d&#39;;
   }
   cout << "The Previous sequence is: " << seq;
   return 0;
}
Nach dem Login kopieren

Ausgabe

The previous sequence is: abbcc
Nach dem Login kopieren

Schlussfolgerung

In diesem Artikel haben wir über die erweiterte Zeichenmatrix und deren Bildung gesprochen. Wir haben auch die Suche nach dem vorherigen Element in einer erweiterten Matrix besprochen. Wir haben dieses Problem gelöst, indem wir die durch die erweiterte Zeichenmatrix erzeugten Muster verstanden haben.

Wir haben auch C++-Code zur Lösung dieses Problems besprochen, den wir in jeder Programmiersprache wie C, Java, Python usw. schreiben können. Wir hoffen, dass Sie dieses Tutorial hilfreich finden.

Das obige ist der detaillierte Inhalt vonGibt in einer erweiterten Matrix das vorherige Element in C++ zurück. 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)

PHP-Tipps: Implementieren Sie schnell die Funktion „Zurück zur vorherigen Seite'. PHP-Tipps: Implementieren Sie schnell die Funktion „Zurück zur vorherigen Seite'. Mar 09, 2024 am 08:21 AM

PHP-Tipps: Implementieren Sie schnell die Funktion zum Zurückkehren zur vorherigen Seite. Bei der Webentwicklung müssen wir häufig die Funktion zum Zurückkehren zur vorherigen Seite implementieren. Solche Vorgänge können das Benutzererlebnis verbessern und Benutzern die Navigation zwischen Webseiten erleichtern. In PHP können wir diese Funktion durch einfachen Code erreichen. In diesem Artikel wird erläutert, wie Sie die Funktion zum Zurückkehren zur vorherigen Seite schnell implementieren können, und es werden spezifische PHP-Codebeispiele bereitgestellt. In PHP können wir $_SERVER['HTTP_REFERER'] verwenden, um die URL der vorherigen Seite abzurufen

Welche Ergebnisse gibt MySQL nach dem Einfügen von Daten zurück? Welche Ergebnisse gibt MySQL nach dem Einfügen von Daten zurück? Mar 01, 2024 am 10:27 AM

MySQL ist ein weit verbreitetes relationales Datenbankverwaltungssystem zum Speichern und Verwalten von Daten. Wenn wir neue Daten in eine Datenbanktabelle einfügen möchten, verwenden wir normalerweise die INSERT-Anweisung. Wenn in MySQL die INSERT-Anweisung ausgeführt wird, um Daten erfolgreich einzufügen, wird ein Ergebnis zurückgegeben, das das Ergebnis des Einfügevorgangs ist. In diesem Artikel werden wir die von MySQL nach dem Einfügen von Daten zurückgegebenen Ergebnisse ausführlich besprechen und einige spezifische Codebeispiele bereitstellen. 1. Das nach dem Einfügen der Daten zurückgegebene Ergebnis liegt bei erfolgreicher Ausführung in MySQL vor

So verwenden Sie Vue, um den Effekt „Zurück zur vorherigen Seite' zu implementieren So verwenden Sie Vue, um den Effekt „Zurück zur vorherigen Seite' zu implementieren Sep 19, 2023 pm 01:07 PM

So implementieren Sie mit Vue den Spezialeffekt der Rückkehr zur vorherigen Seite. Bei der Front-End-Entwicklung stoßen wir häufig auf Situationen, in denen wir zur vorherigen Seite zurückkehren müssen. Durch das Hinzufügen einer Zurück-Schaltfläche können Sie eine bessere Benutzererfahrung bieten. In diesem Artikel wird erläutert, wie Sie mithilfe des Vue-Frameworks den besonderen Effekt erzielen, zur vorherigen Seite zurückzukehren, und entsprechende Codebeispiele bereitstellen. Zunächst müssen Sie im Vue-Projekt eine Seite wie die vorherige Seite erstellen. Wir können das Routing über VueRouter festlegen und jede Route entspricht einer Komponente. Auf der vorherigen Seite können wir eine Zurück-Schaltfläche hinzufügen und das Klickereignis übergeben

Gibt in einer erweiterten Matrix das vorherige Element in C++ zurück Gibt in einer erweiterten Matrix das vorherige Element in C++ zurück Sep 15, 2023 am 09:17 AM

Besprechen Sie ein Problem anhand der erweiterten Matrix. Eine erweiterte Matrix ist eine Matrix, deren Größe um einen bestimmten Faktor zunimmt. Hier haben wir eine Zeichenmatrix, deren Größe um ein Vielfaches von 2 erweitert wird, d. h. wenn die Größe der ursprünglichen Matrix N*N beträgt, dann beträgt die Größe der erweiterten Matrix 2N*2N. Wir erhalten eine Zeichenfolge, die sich bei (i, j) befindet, und wir müssen die Zeichenfolge zurückgeben, die sich bei (i, (j-N-1)%N) befindet. Lassen Sie uns das verstehen, indem wir einige anfängliche Erweiterungsmatrizen visualisieren. GegebenMatrix->[a,b][c,d],2X2matrixMultiplizierenmit{a,b,c,d}AX[a,b]BX[a,b]CX[a,b]DX[a,b][c ,D]

Das Java-Programm gibt das größte Element in einer Liste zurück Das Java-Programm gibt das größte Element in einer Liste zurück Aug 19, 2023 pm 05:17 PM

Wir können eine Array-Schleife verwenden, um das größte Element aus der Liste zurückzugeben. Dies wird hauptsächlich durch den Vergleich von Modellen erreicht. In einer Liste wird die größte Zahl mit allen Elementen in der Liste verglichen. Die Prozedur betrachtet „n“ als Eingabegröße und speichert sie als Datenwert im Array. Anschließend zeigt das Programm nach Ende der Schleife das größte Element auf der Ausgabekonsole an. In diesem Artikel helfen wir Ihnen, Java-Code zu verstehen und zu schreiben, mit dem Sie das größte Element aus einer Array-Liste finden können. Wie wähle ich mit Java die größte Zahl aus einem Array aus? Wir können die größte Zahl finden, indem wir ein Array sortieren. Um Array L zu vermeiden, können wir die größte Zahl ermitteln

Wie kann ich den Wert einer benutzerdefinierten PHP-Funktion zurückgeben? Wie kann ich den Wert einer benutzerdefinierten PHP-Funktion zurückgeben? Apr 15, 2024 pm 05:00 PM

Benutzerdefinierte Funktionen in PHP können über die Return-Anweisung Werte bestimmter Typen zurückgeben, einschließlich Zeichenfolgen, Zahlen, Arrays und Objekte. Praktischer Fall: - Rückgabezeichenfolge: functiongreet($name){return "Hello,$name!";} - Rückgabearray: functionget_user_data($id){return["name"=>"John",email"=> " john@example.com"];}

Schreiben Sie in der C-Programmierung eine Funktion, die 2 zurückgibt, wenn die Eingabe 1 ist, und 1, wenn die Eingabe 2 ist Schreiben Sie in der C-Programmierung eine Funktion, die 2 zurückgibt, wenn die Eingabe 1 ist, und 1, wenn die Eingabe 2 ist Sep 10, 2023 pm 01:25 PM

Sie müssen eine Funktion erstellen, die 2 für Eingabe 1 und 1 für Eingabe 2 zurückgibt. Diese Funktion kann abhängig von der von Ihnen verwendeten Logik auf verschiedene Arten ausgeführt werden. Der einfachste Weg ist die Verwendung einer bedingten Anweisung. Wenn die Zahl 1 ist, wird 2 zurückgegeben, andernfalls wird 1 zurückgegeben. Andere Möglichkeiten umfassen die Verwendung mathematischer Operationen (jede Art funktioniert) und XOR-Operationen. Beispiel #include<stdio.h>//Method1usingtheifstatementintreverseif(intx){ if(x==1)eturn2;}/

Wie erstelle ich mit PHP eine Funktion mit einem Rückgabewert? Wie erstelle ich mit PHP eine Funktion mit einem Rückgabewert? Apr 10, 2024 pm 12:45 PM

Zu den Schritten zur Verwendung von Funktionsrückgabewerten in PHP gehören: Verwenden einer Funktion zum Deklarieren einer Funktion; Verwenden der Rückgabeanweisung zum Zurückgeben von Ergebnissen; Erfassen des Rückgabewerts;

See all articles