Inhaltsverzeichnis
Algorithmus zum Unterscheiden von Teilzeichenfolgen
Syntax zum Erstellen aller verschiedenen Teilzeichenfolgen
Methode
Finden Sie die Mindestanzahl an Änderungen, sodass alle Teilzeichenfolgen einer Zeichenfolge unterschiedlich werden
Beispiel 1: Verwendung von C++
Ausgabe
Beispiel 2: Durch die Verwendung von Java
Beispiel 1: Verwendung von Python
Fazit
Heim Backend-Entwicklung C++ Ändern Sie eine Zeichenfolge minimal, sodass alle Teilzeichenfolgen unterschiedlich sind

Ändern Sie eine Zeichenfolge minimal, sodass alle Teilzeichenfolgen unterschiedlich sind

Sep 04, 2023 pm 02:49 PM
字符串 子字符串 minimale Änderungen

Ändern Sie eine Zeichenfolge minimal, sodass alle Teilzeichenfolgen unterschiedlich sind

Eine Zeichenfolge ist ein bestimmter Objekttyp, der die Reihenfolge und den Fluss von Datenzeichen darstellt. Eine Zeichenfolge ist ein Datencontainer, der immer im Textformat dargestellt wird. Es wird auch für konzeptionelle, Vergleichs-, Teilungs-, Verbindungs-, Ersetzungs-, Trimm-, Längen-, Internalisierungs-, Gleichheits-, Vergleichs- und Teilzeichenfolgenoperationen verwendet. substring() ist ein Datenverfeinerungsprozess, der Daten zwischen gespeicherten Daten vom Anfang bis zum Ende extrahiert. substring() ändert die ursprüngliche Zeichenfolge nicht. Wenn wir in einem Datensatz unterschiedliche Zeichen haben, können diese als unterschiedliche Datenelemente dargestellt werden. Beispiel: „a“ und „r“ sind unterschiedlich, während „r“ und „r“ gleich sind. Eine Zeichenfolge von beispielsweise Orange enthält also 6 verschiedene Zeichen. Ebenso enthält die Zeichenfolge apple nur 4 unterschiedliche Zeichen.

Angenommen, „s“ ist eine Zeichenfolge und wir müssen die Mindestanzahl an Änderungen ermitteln, die für alle Teilzeichenfolgen erforderlich sind, um die Zeichenfolge unterschiedlich zu machen.

  • Länge der Schnur – 26

  • Die gegebene Eingabe − T ist der Testfall der ersten Zeile, die eine ganze Zahl ist. Für jeden Testfall gibt es nur eine Zeile mit 26 Zeichen.

  • Ausgabe – Wir erhalten die Mindestanzahl an Änderungen für jeden Testfall.

  • Einschränkungen des logischen Methodenablaufs

    • 1

    • 1

Im heutigen Artikel erfahren wir, wie man einen String so ändert, dass alle Teilstrings unterschiedlich sind.

Algorithmus zum Unterscheiden von Teilzeichenfolgen

Dies ist ein möglicher Algorithmus zum Bearbeiten einer Zeichenfolge, sodass alle Teilzeichenfolgen eindeutig sind und gleichzeitig Änderungen minimiert werden.

  • Schritt eins – starten.

  • Schritt 2 – Verwenden Sie zwei verschachtelte Schleifen, um Teilzeichenfolgen zu generieren.

  • Schritt 3 – Die äußere Schleife beginnt bei i = 0 und subtrahiert die Stringlänge um 1.

  • Schritt 4 – Innere Schleife beginnt bei j = 0 und subtrahiert die Stringlänge um 1.

  • Schritt 5 – Konstruieren Sie eine Zählvariable mit dem Nullwert.

  • Schritt 6– Erstellen Sie innerhalb der äußeren Schleife eine Variable „distinct_character“.

  • Schritt 7 – Frequenzarray erstellen.

  • Schritt 8– Alle Elemente auf Null setzen.

  • Schritt 9 – Überprüfen Sie, ob die Häufigkeit von string[j] – „a“ Null ist.

  • Schritt 10 − Wenn es Null ist, erhöhen Sie es um 1.

  • Schritt 11 − Andernfalls teilen Sie es in eine innere Schleife auf.

  • Schritt 12 – Wenn die Zählung größer als Null ist, geben Sie die Zählung zurück.

  • Schritt 13 – Andernfalls geben Sie -1 zurück.

  • Schritt 14 – Kündigung.

Syntax zum Erstellen aller verschiedenen Teilzeichenfolgen

string.substring(start, end)
Nach dem Login kopieren

In dieser Syntax können wir sehen, wie man minimale Änderungen an einer Zeichenfolge vornimmt, sodass alle Teilzeichenfolgen unterschiedlich sind.

  • Parameter

    • Start – Eine Startposition muss angegeben werden. Der Index des ersten Zeichens ist hier 0.

    • End – Es handelt sich um einen optionalen Prozess am Ende (einschließlich, aber nicht beschränkt auf).

Methode

Methode 1 − Ermitteln Sie die Mindestanzahl an Änderungen, die alle Teilzeichenfolgen der Zeichenfolge unterschiedlich machen.

Finden Sie die Mindestanzahl an Änderungen, sodass alle Teilzeichenfolgen einer Zeichenfolge unterschiedlich werden

In dieser Methode lernen wir, wie man alle Teilzeichenfolgen unterschiedlich macht. Hier muss jeder Charakter anders sein. Wir müssen nur die Anzahl der Zeichen ermitteln. Wenn die Länge des Strings mehr als 26 beträgt, müssen wir ihn nur in einen String konvertieren. Hier werden wir dieselbe Logik an verschiedenen Orten schreiben.

Beispiel 1: Verwendung von C++

#include <bits/stdc++.h>
using namespace std;
const int MAX_CHAR = 26;
int minChanges(string &str) {
   int n = str.length();
   if (n > MAX_CHAR)
   return -1;
   int dist_count = 0;
   int count[MAX_CHAR] = {0};
   for (int i = 0; i < n; i++) {
      if (count[str[i] - 'a'] == 0)
      dist_count++;
      count[(str[i] - 'a')]++;
   }
   return (n - dist_count);
}
int main() {
   string str = "aebaecedabbeedee";
   cout << minChanges(str);
   return 0;
}
Nach dem Login kopieren

Ausgabe

11
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Beispiel 2: Durch die Verwendung von Java

import java.lang.*;
import java.util.*;
public class tutorialspoint {
   static final int MAX_CHAR = 26;
   public static int minChanges(String str) {
      int n = str.length();
      if (n > MAX_CHAR)
      return -1;
      int dist_count = 0;
      int count[] = new int[MAX_CHAR];
      for(int i = 0; i < MAX_CHAR; i++)
      count[i] = 0;
      for (int i = 0; i < n; i++) {
         if(count[str.charAt(i)-'a'] == 0)
         dist_count++;
         count[str.charAt(i)-'a']++;
      }
      return (n-dist_count);
   }
   public static void main (String[] args) {
      String str = "aebaecedabbeedee";
      System.out.println(minChanges(str));
   }
}
Nach dem Login kopieren

Ausgabe

11
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Beispiel 1: Verwendung von Python

MAX_CHAR = [26]
def minChanges(str):

	n = len(str )
	if (n > MAX_CHAR[0]):
		return -1
	dist_count = 0
	count = [0] * MAX_CHAR[0]

	for i in range(n):
		if (count[ord(str[i]) - ord('a')] == 0) :
			dist_count += 1
		count[(ord(str[i]) - ord('a'))] += 1
	return (n - dist_count)
if __name__ == '__main__':
	str = "aebaecedabbeedee"
	print(minChanges(str))
	
Nach dem Login kopieren

Ausgabe

11
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Fazit

Heute haben wir in diesem Artikel gelernt, wie man mit minimalen Änderungen alle Teilzeichenfolgen unterschiedlich macht. Hier haben wir einige mögliche Codes erstellt, indem wir dem beschriebenen Algorithmus in C++, Java und Python gefolgt sind. Wir hoffen, dass Ihnen dies dabei hilft, ein umfassenderes Verständnis des Themas zu erlangen.

Das obige ist der detaillierte Inhalt vonÄndern Sie eine Zeichenfolge minimal, sodass alle Teilzeichenfolgen unterschiedlich sind. 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)
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Chat -Befehle und wie man sie benutzt
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)

Detaillierte Erläuterung der Methode zum Konvertieren des Typs „int' in „string' in PHP Detaillierte Erläuterung der Methode zum Konvertieren des Typs „int' in „string' in PHP Mar 26, 2024 am 11:45 AM

Ausführliche Erläuterung der Methode zum Konvertieren des Typs int in einen String in PHP. Bei der PHP-Entwicklung stoßen wir häufig auf die Notwendigkeit, den Typ int in einen String-Typ zu konvertieren. Diese Konvertierung kann auf verschiedene Weise erreicht werden. In diesem Artikel werden verschiedene gängige Methoden im Detail vorgestellt, mit spezifischen Codebeispielen, um den Lesern das Verständnis zu erleichtern. 1. Verwenden Sie die integrierte Funktion strval() von PHP. PHP bietet eine integrierte Funktion strval(), die Variablen verschiedener Typen in String-Typen konvertieren kann. Wenn wir den Typ int in den Typ string konvertieren müssen,

So ermitteln Sie, ob eine Golang-Zeichenfolge mit einem bestimmten Zeichen endet So ermitteln Sie, ob eine Golang-Zeichenfolge mit einem bestimmten Zeichen endet Mar 12, 2024 pm 04:48 PM

Titel: So ermitteln Sie, ob eine Zeichenfolge in Golang mit einem bestimmten Zeichen endet. In der Go-Sprache müssen wir manchmal feststellen, ob eine Zeichenfolge mit einem bestimmten Zeichen endet. In diesem Artikel wird erläutert, wie Sie diese Funktion mithilfe der Go-Sprache implementieren, und es werden Codebeispiele als Referenz bereitgestellt. Schauen wir uns zunächst an, wie Sie in Golang feststellen können, ob eine Zeichenfolge mit einem bestimmten Zeichen endet. Die Zeichen in einer Zeichenfolge in Golang können durch Indizierung ermittelt werden, und die Länge der Zeichenfolge kann ermittelt werden

So wiederholen Sie eine Zeichenfolge in Python_Tutorial zum Wiederholen von Zeichenfolgen in Python So wiederholen Sie eine Zeichenfolge in Python_Tutorial zum Wiederholen von Zeichenfolgen in Python Apr 02, 2024 pm 03:58 PM

1. Öffnen Sie zuerst Pycharm und rufen Sie die Pycharm-Homepage auf. 2. Erstellen Sie dann ein neues Python-Skript, klicken Sie mit der rechten Maustaste – klicken Sie auf „Neu“ – klicken Sie auf „Pythondatei“. 3. Geben Sie eine Zeichenfolge ein, Code: s="-". 4. Dann müssen Sie die Symbole in der Zeichenfolge 20 Mal wiederholen, Code: s1=s*20 5. Geben Sie den Druckausgabecode ein, Code: print(s1). 6. Führen Sie abschließend das Skript aus und Sie sehen unten unseren Rückgabewert: - 20 Mal wiederholt.

Wie kann man in Golang überprüfen, ob eine Zeichenfolge mit einem bestimmten Zeichen beginnt? Wie kann man in Golang überprüfen, ob eine Zeichenfolge mit einem bestimmten Zeichen beginnt? Mar 12, 2024 pm 09:42 PM

Wie kann man in Golang überprüfen, ob eine Zeichenfolge mit einem bestimmten Zeichen beginnt? Beim Programmieren in Golang kommt es häufig vor, dass Sie prüfen müssen, ob eine Zeichenfolge mit einem bestimmten Zeichen beginnt. Um diese Anforderung zu erfüllen, können wir die vom Strings-Paket in Golang bereitgestellten Funktionen verwenden, um dies zu erreichen. Als Nächstes stellen wir anhand spezifischer Codebeispiele ausführlich vor, wie Sie mit Golang überprüfen können, ob eine Zeichenfolge mit einem bestimmten Zeichen beginnt. In Golang können wir HasPrefix aus dem Strings-Paket verwenden

So fangen Sie eine Zeichenfolge in der Go-Sprache ab So fangen Sie eine Zeichenfolge in der Go-Sprache ab Mar 13, 2024 am 08:33 AM

Die Go-Sprache ist eine leistungsstarke und flexible Programmiersprache, die umfangreiche Funktionen zur Zeichenfolgenverarbeitung bietet, einschließlich des Abfangens von Zeichenfolgen. In der Go-Sprache können wir Slices verwenden, um Zeichenfolgen abzufangen. Als Nächstes stellen wir anhand spezifischer Codebeispiele ausführlich vor, wie Zeichenfolgen in der Go-Sprache abgefangen werden. 1. Verwenden Sie Slicing, um eine Zeichenfolge abzufangen. In der Go-Sprache können Sie Slicing-Ausdrücke verwenden, um einen Teil einer Zeichenfolge abzufangen. Die Syntax des Slice-Ausdrucks lautet wie folgt: Slice:=str[Start:End]wo, s

So lösen Sie das Problem verstümmelter chinesischer Zeichen bei der Konvertierung von Hexadezimalzahlen in Zeichenfolgen in PHP So lösen Sie das Problem verstümmelter chinesischer Zeichen bei der Konvertierung von Hexadezimalzahlen in Zeichenfolgen in PHP Mar 04, 2024 am 09:36 AM

Methoden zur Lösung des Problems verstümmelter chinesischer Zeichen beim Konvertieren von Hexadezimalzeichenfolgen in PHP. Bei der PHP-Programmierung stoßen wir manchmal auf Situationen, in denen wir Hexadezimalzeichenfolgen in normale chinesische Zeichen konvertieren müssen. Bei dieser Konvertierung treten jedoch manchmal Probleme mit verstümmelten chinesischen Zeichen auf. In diesem Artikel finden Sie eine Methode zur Lösung des Problems verstümmelter chinesischer Zeichen bei der Konvertierung von Hexadezimalzahlen in Zeichenfolgen in PHP sowie spezifische Codebeispiele. Verwenden Sie die Funktion hex2bin() für die Hexadezimalkonvertierung. Die in PHP integrierte Funktion hex2bin() kann 1 konvertieren

Tipps zum PHP-String-Matching: Vermeiden Sie mehrdeutige eingeschlossene Ausdrücke Tipps zum PHP-String-Matching: Vermeiden Sie mehrdeutige eingeschlossene Ausdrücke Feb 29, 2024 am 08:06 AM

Tipps zum PHP-String-Matching: Vermeiden Sie mehrdeutige eingeschlossene Ausdrücke. In der PHP-Entwicklung ist der String-Matching eine häufige Aufgabe, die normalerweise verwendet wird, um bestimmte Textinhalte zu finden oder das Eingabeformat zu überprüfen. Manchmal müssen wir jedoch die Verwendung mehrdeutiger Einschlussausdrücke vermeiden, um die Übereinstimmungsgenauigkeit sicherzustellen. In diesem Artikel werden einige Techniken zur Vermeidung mehrdeutiger Einschlussausdrücke beim String-Matching in PHP vorgestellt und spezifische Codebeispiele bereitgestellt. Verwenden Sie die Funktion preg_match() für den exakten Abgleich. In PHP können Sie preg_mat verwenden

PHP-String-Manipulation: eine praktische Möglichkeit, Leerzeichen effektiv zu entfernen PHP-String-Manipulation: eine praktische Möglichkeit, Leerzeichen effektiv zu entfernen Mar 24, 2024 am 11:45 AM

PHP-String-Operation: Eine praktische Methode zum effektiven Entfernen von Leerzeichen Bei der PHP-Entwicklung kommt es häufig vor, dass Sie Leerzeichen aus einem String entfernen müssen. Das Entfernen von Leerzeichen kann die Zeichenfolge sauberer machen und die nachfolgende Datenverarbeitung und -anzeige erleichtern. In diesem Artikel werden mehrere effektive und praktische Methoden zum Entfernen von Leerzeichen vorgestellt und spezifische Codebeispiele angehängt. Methode 1: Verwenden Sie die in PHP integrierte Funktion trim(). Die in PHP integrierte Funktion trim() kann Leerzeichen an beiden Enden der Zeichenfolge entfernen (einschließlich Leerzeichen, Tabulatoren, Zeilenumbrüche usw.), was sehr praktisch und einfach ist benutzen.

See all articles