面试题2:替换空格
来源:《剑指Offer》 题目:请实现一个函数,把字符串的每个空格替换成”%20”,原字符串后面有足够的空间,要求在原字符串上操作。例如输入”we are happy”,则输出”we%20are%20happy”。 分析:先遍历一遍统计出空格数,一个空格替换成三个字符,长度增
来源:《剑指Offer》
题目:请实现一个函数,把字符串的每个空格替换成”%20”,原字符串后面有足够的空间,要求在原字符串上操作。例如输入”we are happy”,则输出”we%20are%20happy”。
分析:先遍历一遍统计出空格数,一个空格替换成三个字符,长度增加了2,N个空格,长度增加2N。则
替换后的字符串长度 = 原字符串长度 + 2N
设置两个指针,一个指向原字符串末尾,一个指向新字符串末尾。第二遍遍历,从后往前遍历。将原字符串最后一个字符复制到新字符串最后一个字符的位置,两个指针同时前移。当原字符串遇到空格,在新字符串对应位置插入”%20”三个字符,接着原字符串指针前移1位,新字符串指针前移3位。如此操作,直到原字符串第一个字符也复制完结束。
代码(C++):
<code><span>#include<iostream></iostream></span> <span>using</span> <span>namespace</span> <span>std</span>; <span>#define MAX_LEN 100</span> <span>/* 函数功能:替换字符串中的空格 */</span> <span>void</span> replaceBlank(<span>char</span> data[]) { <span>int</span> i=<span>0</span>,j; <span>int</span> old_len; <span>int</span> new_len; <span>int</span> blank_num=<span>0</span>; <span>// 遍历一遍,找出空格数</span> <span>while</span>(data[i]!=<span>'\0'</span>) { <span>if</span>(data[i]==<span>' '</span>) { blank_num++; } i++; } <span>//-----------这里是关键------------</span> <span>// 原来字符串长度</span> old_len=i+<span>1</span>; <span>// 计算新字符串长度</span> new_len=old_len+<span>2</span>*blank_num; <span>// 重置i,j</span> i=old_len-<span>1</span>; j=new_len - <span>1</span>; <span>//-----------这里是关键------------</span> <span>// 再遍历一遍,替换空格</span> <span>while</span>(i>=<span>0</span>) { <span>if</span>(data[i]!=<span>' '</span>) { data[j]=data[i]; j--; } <span>else</span> { data[j]=<span>'0'</span>; data[j-<span>1</span>]=<span>'2'</span>; data[j-<span>2</span>]=<span>'%'</span>; j-=<span>3</span>; } i--; } } <span>int</span> main() { <span>char</span> str[MAX_LEN];<span>// 声明一个字符数组</span> <span>// 输入数组</span> <span>cout</span>"请输入一个字符串,不超过20个字符"// 替换 replaceBlank(str); <span>// 打印</span> <span>cout</span>return <span>0</span>; } </code>

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Wie implementiert man die doppelte WeChat-Anmeldung auf Huawei-Mobiltelefonen? Mit dem Aufkommen der sozialen Medien ist WeChat zu einem unverzichtbaren Kommunikationsmittel im täglichen Leben der Menschen geworden. Viele Menschen können jedoch auf ein Problem stoßen: Sie können sich gleichzeitig auf demselben Mobiltelefon bei mehreren WeChat-Konten anmelden. Für Huawei-Mobiltelefonbenutzer ist es nicht schwierig, eine doppelte WeChat-Anmeldung zu erreichen. In diesem Artikel wird erläutert, wie eine doppelte WeChat-Anmeldung auf Huawei-Mobiltelefonen erreicht wird. Erstens bietet das EMUI-System, das mit Huawei-Mobiltelefonen geliefert wird, eine sehr praktische Funktion – das doppelte Öffnen von Anwendungen. Durch die doppelte Öffnungsfunktion der Anwendung können Benutzer gleichzeitig

Der Unterschied zwischen Leerzeichen voller und halber Breite Wenn wir Textverarbeitungssoftware verwenden oder Textinhalte bearbeiten, stoßen wir manchmal auf das Konzept von Leerzeichen. Leerzeichen sind ein sehr grundlegendes Element beim Setzen und Formatieren von Text, aber viele Menschen kennen möglicherweise nicht den Unterschied zwischen Leerzeichen voller und halber Breite. Im täglichen Gebrauch haben wir möglicherweise das Gefühl, dass Leerzeichen voller Breite und Leerzeichen halber Breite in unterschiedlichen Situationen unterschiedliche Auswirkungen haben, sind uns der subtilen Unterschiede jedoch möglicherweise nicht bewusst. Der Unterschied zwischen Leerzeichen voller und halber Breite besteht zunächst in der Breite, die sie einnehmen.

Die Programmiersprache PHP ist ein leistungsstarkes Werkzeug für die Webentwicklung, das eine Vielzahl unterschiedlicher Programmierlogiken und Algorithmen unterstützen kann. Unter diesen ist die Implementierung der Fibonacci-Folge ein häufiges und klassisches Programmierproblem. In diesem Artikel stellen wir vor, wie Sie die Fibonacci-Folge mit der Programmiersprache PHP implementieren, und fügen spezifische Codebeispiele bei. Die Fibonacci-Folge ist eine mathematische Folge, die wie folgt definiert ist: Das erste und das zweite Element der Folge sind 1, und ab dem dritten Element ist der Wert jedes Elements gleich der Summe der beiden vorherigen Elemente. Die ersten paar Elemente der Sequenz

So implementieren Sie die WeChat-Klonfunktion auf Huawei-Mobiltelefonen Mit der Popularität sozialer Software und der zunehmenden Bedeutung von Datenschutz und Sicherheit rückt die WeChat-Klonfunktion allmählich in den Mittelpunkt der Aufmerksamkeit der Menschen. Die WeChat-Klonfunktion kann Benutzern helfen, sich gleichzeitig bei mehreren WeChat-Konten auf demselben Mobiltelefon anzumelden, was die Verwaltung und Nutzung erleichtert. Es ist nicht schwierig, die WeChat-Klonfunktion auf Huawei-Mobiltelefonen zu implementieren. Sie müssen lediglich die folgenden Schritte ausführen. Schritt 1: Stellen Sie sicher, dass die Version Ihres Mobiltelefonsystems und die WeChat-Version den Anforderungen entsprechen. Stellen Sie zunächst sicher, dass die Version Ihres Huawei-Mobiltelefonsystems sowie die WeChat-App auf die neueste Version aktualisiert wurden.

Im heutigen Bereich der Softwareentwicklung wird Golang (Go-Sprache) als effiziente, prägnante und hochgradig parallele Programmiersprache von Entwicklern zunehmend bevorzugt. Seine umfangreiche Standardbibliothek und die effizienten Parallelitätsfunktionen machen es zu einer hochkarätigen Wahl im Bereich der Spieleentwicklung. In diesem Artikel wird untersucht, wie man Golang für die Spieleentwicklung verwendet, und seine leistungsstarken Möglichkeiten anhand spezifischer Codebeispiele demonstriert. 1. Golangs Vorteile bei der Spieleentwicklung: Als statisch typisierte Sprache wird Golang beim Aufbau großer Spielsysteme verwendet.

Implementierungsleitfaden für PHP-Spielanforderungen Mit der Popularität und Entwicklung des Internets erfreut sich der Markt für Webspiele immer größerer Beliebtheit. Viele Entwickler hoffen, die PHP-Sprache zur Entwicklung ihrer eigenen Webspiele nutzen zu können, und die Umsetzung der Spielanforderungen ist ein wichtiger Schritt. In diesem Artikel wird erläutert, wie Sie mithilfe der PHP-Sprache allgemeine Spielanforderungen implementieren und spezifische Codebeispiele bereitstellen. 1. Spielfiguren erstellen In Webspielen sind Spielfiguren ein sehr wichtiges Element. Wir müssen die Attribute des Spielcharakters wie Name, Level, Erfahrungswert usw. definieren und Methoden für deren Bedienung bereitstellen

PyCharm ist eine leistungsstarke integrierte Python-Entwicklungsumgebung mit umfangreichen Funktionen und Tools, die die Entwicklungseffizienz erheblich verbessern können. Unter diesen ist die Ersetzungsfunktion eine der im Entwicklungsprozess häufig verwendeten Funktionen, die Entwicklern helfen kann, den Code schnell zu ändern und die Codequalität zu verbessern. In diesem Artikel wird die Ersetzungsfunktion von PyCharm ausführlich vorgestellt, kombiniert mit spezifischen Codebeispielen, um Anfängern zu helfen, diese Funktion besser zu beherrschen und zu verwenden. Einführung in die Ersetzungsfunktion Die Ersetzungsfunktion von PyCharm kann Entwicklern dabei helfen, bestimmten Text im Code schnell zu ersetzen

jQuery ist eine klassische JavaScript-Bibliothek, die in der Webentwicklung weit verbreitet ist. Sie vereinfacht Vorgänge wie die Verarbeitung von Ereignissen, die Bearbeitung von DOM-Elementen und die Durchführung von Animationen auf Webseiten. Bei der Verwendung von jQuery kommt es häufig vor, dass Sie den Klassennamen eines Elements ersetzen müssen. In diesem Artikel werden einige praktische Methoden und spezifische Codebeispiele vorgestellt. 1. Verwenden Sie die Methoden „removeClass()“ und „addClass()“. jQuery stellt die Methode „removeClass()“ zum Löschen bereit
