实现reverse字符串

不分配额外空间,直接就地反转字符串,另外还要注意null字符。

void reverse(char *str)

{

char *end = str;

char tmp;

if (str)

{

while (*end)//找出字符串末尾

{

++end;

}

--end;//回退一个字符,最后一个为null的字符

/*从字符串首尾开始交换两个字符,直到两个指针在中间碰头*/

while (str < end)

{

tmp = *str;

*str++ =*end;

*end-- = tmp;

}

}

}

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-11-04 09:03:34

实现reverse字符串的相关文章

hdu 1062 Text Reverse 字符串反转

Text Reverse Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 18240    Accepted Submission(s): 6900 Problem Description Ignatius likes to write words in reverse way. Given a single line of text

[C/C++] String Reverse 字符串 反转

#include <iostream> #include <string> #include <algorithm> #include <cstring> inline void STL_Reverse(std::string& str) // 反转string字符串 包装STL的reverse() 可以inline { reverse(str.begin(), str.end()); // STL 反转函数 reverse() 的实现 /* tem

HDOJ/HDU 1062 Text Reverse(字符串翻转~)

Problem Description Ignatius likes to write words in reverse way. Given a single line of text which is written by Ignatius, you should reverse all the words and then output them. Input The input contains several test cases. The first line of the inpu

字符串缓冲区

StringBuffer字符串缓冲区 构造一个其中不带字符的字符串缓冲区,初始容量为 16 个字符. 特点: 1:可以对字符串内容进行修改. 2:是一个容器. 3:是可变长度的. 4:缓冲区中可以存储任意类型的数据. 5:最终需要变成字符串. 容器通常具备一些固定的方法: 1,添加. StringBuffer append(data):在缓冲区中追加数据.追加到尾部. StringBuffer insert(index,data):在指定位置插入数据. 2,删除. StringBuffer de

Java字符串常见实例与函数

字符串比较 字符串函数 compareTo (string) ,compareToIgnoreCase(String) 及 compareTo(object string) 来比较两个字符串,并返回字符串中第一个字母ASCII的差值. public class StringCompareEmp{ public static void main(String args[]){ String str = "Hello World"; String anotherString = "

javascript 基本使用—字符串、变量、数组、函数、for循环

什么是javascript: JavaScript是一种属于网络的脚本语言,已经被广泛用于Web应用开发,常用来为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果. 什么是jQuery: jQuery是一个优秀的JavaScript库,提供许多封装好的功能. javascript 在网页中存在的方式: 当前页面引用js <script type="text/javascript"></script> 引用文件js <!DOCTYPE html&g

ruby执行字符串代码

str = "a='abcd'; a.reverse" 字符串str为ruby代码,执行方法eval eval str => "dcba"

java常见字符串的操作

1 /** 2 * java常见字符串的操作 3 */ 4 public class Test7 { 5 public static void main(String args[]){ 6 StringBuffer sBuffer = new StringBuffer("ABCDEF"); 7 sBuffer.append("abcdef"); 8 sBuffer.append(".123"); 9 sBuffer.append(".4

Java学习(API及Object类、String类、StringBuffer字符串缓冲区)

一.JAVA的API及Object类 1.API 概念: Java 的API(API: Application(应用) Programming(程序) Interface(接口)) Java API就是JDK中提供给我们使用的类,这些类将底层的代码实现封装了起来,我们不需要关心这些类是如何实现的,只需要学习这些类如何使用即可. 在JDK安装目录下有个src.zip文件,这个文件解压缩后里面的内容是所有Java类的源文件.可以在其中查看相对应的类的源码. 我们在每次查看类中的方法时,都打开源代码进