青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
OnTheWay2012
埋葬昨天的我,迎來重生的我!
C++博客
首頁
新文章
新隨筆
聚合
管理
posts - 15, comments - 89, trackbacks - 0
反轉(zhuǎn)字符串
大家在面試的時(shí)候或者在網(wǎng)絡(luò)上經(jīng)常會(huì)看到讓寫一個(gè)字符串反轉(zhuǎn)的函數(shù)的這種題。
以下是我自己寫的字符串反轉(zhuǎn)的函數(shù),懇請(qǐng)各位指教。
char *Reverse_1(char *str)和char *Reverse_2(char *str) 實(shí)現(xiàn)的功能是把字符串反轉(zhuǎn),例如把helloworld反轉(zhuǎn)為dlrowolleh。
char *Reverse_3(char *str)實(shí)現(xiàn)把this is a string反轉(zhuǎn)為string is a this的功能。
1
#include
<
iostream
>
2
#include
<
assert.h
>
3
4
using
namespace
std;
5
6
char
*
Reverse_1(
char
*
str)
7
{
8
assert(NULL
!=
str);
9
10
size_t size
=
strlen(str);
11
if
(NULL
!=
str
&&
1
<
size)
12
{
13
for
(size_t i
=
0
; i
<
size
/
2
; i
++
)
14
{
15
char
ch
=
str[i];
16
str[i]
=
str[size
-
i
-
1
];
17
str[size
-
i
-
1
]
=
ch;
18
}
19
}
20
21
return
str;
22
}
23
24
/**/
////////////////////////////////////////////////////////////////////////
//
25
26
char
*
Reverse_2(
char
*
str)
27
{
28
assert(NULL
!=
str);
29
30
char
*
res
=
str;
31
32
size_t size
=
strlen(str);
33
if
(NULL
!=
str
&&
1
<
size)
34
{
35
char
*
pEnd
=
str
+
size
-
1
;
36
37
if
(
0
==
size
%
2
)
38
{
39
do
40
{
41
char
ch
=
*
str;
42
*
str
=
*
pEnd;
43
*
pEnd
=
ch;
44
}
while
(
++
str
!=
pEnd
--
);
45
}
46
else
47
{
48
do
49
{
50
char
ch
=
*
str;
51
*
str
=
*
pEnd;
52
*
pEnd
=
ch;
53
}
while
(
++
str
!=
--
pEnd);
54
}
55
}
56
57
return
res;
58
}
59
60
/**/
////////////////////////////////////////////////////////////////////////
//
61
////////////////////////////////////////////////////////////////////////
//
62
63
char
*
Reverse_3_1(
char
*
str, size_t size)
64
{
65
assert(NULL
!=
str);
66
67
if
(NULL
!=
str
&&
1
<
size)
68
{
69
for
(size_t i
=
0
; i
<
size
/
2
; i
++
)
70
{
71
char
ch
=
str[i];
72
str[i]
=
str[size
-
i
-
1
];
73
str[size
-
i
-
1
]
=
ch;
74
}
75
}
76
77
return
str;
78
}
79
80
char
*
Reverse_3(
char
*
str)
81
{
82
assert(NULL
!=
str);
83
84
char
*
res
=
str;
85
if
(NULL
!=
str
&&
NULL
!=
strchr(str,
'
'
))
//
這里的strchr是為了防止出現(xiàn)bug(例如:abc被修改為cba)
86
{
87
str
=
Reverse_3_1(str, strlen(str));
88
while
(
true
)
89
{
90
char
*
pSubStr
=
strchr(str,
'
'
);
91
if
(NULL
==
pSubStr)
92
{
93
Reverse_3_1(str, strlen(str));
94
break
;
95
}
96
else
97
{
98
Reverse_3_1(str, pSubStr
-
str);
99
str
=
pSubStr
+
1
;
100
}
101
}
102
}
103
104
return
res;
105
}
106
107
void
main()
108
{
109
/**/
/*
110
以下代碼用來測(cè)試Reverse_1和Reverse_2
111
char chArr1[] = "";
112
cout<<Reverse_2(chArr1)<<endl;
113
114
char chArr2[] = "HelloWorld";
115
cout<<Reverse_2(chArr2)<<endl;
116
117
char chArr3[] = "Hello World";
118
cout<<Reverse_2(chArr3)<<endl;
119
120
char chArr4[] = "JiShuGe";
121
cout<<Reverse_2(chArr4)<<endl;
122
123
char chArr5[] = "OuShuGee";
124
cout<<Reverse_2(chArr5)<<endl;
125
126
char chArr6[] = "ab";
127
cout<<Reverse_2(chArr6)<<endl;
128
129
char chArr7[] = "abc";
130
cout<<Reverse_2(chArr7)<<endl;
131
*/
132
133
char
chArr1[]
=
""
;
134
cout
<<
Reverse_3(chArr1)
<<
endl;
135
136
char
chArr2[]
=
"
HelloWorld
"
;
137
cout
<<
Reverse_3(chArr2)
<<
endl;
138
139
char
chArr3[]
=
"
Hello World
"
;
140
cout
<<
Reverse_3(chArr3)
<<
endl;
141
142
char
chArr4[]
=
"
Ji Shu Ge
"
;
143
cout
<<
Reverse_3(chArr4)
<<
endl;
144
145
char
chArr5[]
=
"
This is a string
"
;
146
cout
<<
Reverse_3(chArr5)
<<
endl;
147
148
char
chArr6[]
=
"
HelloWorld
"
;
149
cout
<<
Reverse_3(chArr6)
<<
endl;
150
151
char
chArr7[]
=
"
HelloWorld
"
;
152
cout
<<
Reverse_3(chArr7)
<<
endl;
153
154
char
chArr8[]
=
"
Hello World
"
;
155
cout
<<
Reverse_3(chArr8)
<<
endl;
156
157
char
chArr9[]
=
"
He llo Wor ld
"
;
158
cout
<<
Reverse_3(chArr9)
<<
endl;
159
}
posted on 2010-05-08 17:21
OnTheWay
閱讀(390)
評(píng)論(1)
編輯
收藏
引用
所屬分類:
算法
FeedBack:
#
re: 反轉(zhuǎn)字符串
2010-05-08 17:45 |
小時(shí)候可靚了
就這樣一點(diǎn)點(diǎn)寫下去,就會(huì)很厲害。。。中間不要間斷
回復(fù)
更多評(píng)論
刷新評(píng)論列表
只有注冊(cè)用戶
登錄
后才能發(fā)表評(píng)論。
相關(guān)文章:
給定一個(gè)字符串,求其所有可能組合
寫了兩個(gè)函數(shù)(1)把一個(gè)unsigned int 轉(zhuǎn)換成字符型的IP(2)鏈表插入元素,升序
反轉(zhuǎn)字符串
網(wǎng)站導(dǎo)航:
博客園
IT新聞
BlogJava
博問
Chat2DB
管理
<
2011年1月
>
日
一
二
三
四
五
六
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
常用鏈接
我的隨筆
我的評(píng)論
我參與的隨筆
留言簿
(4)
給我留言
查看公開留言
查看私人留言
隨筆分類
C、C++(2)
操作系統(tǒng)(Windows、Linux、Unix)
讀書筆記
個(gè)人感悟(4)
面經(jīng) (4)
軟件設(shè)計(jì)(1)
數(shù)據(jù)庫
算法(3)
線程、進(jìn)程
英語
雜項(xiàng)
轉(zhuǎn)載
隨筆檔案
2011年1月 (1)
2010年12月 (2)
2010年11月 (1)
2010年6月 (1)
2010年5月 (6)
2010年4月 (1)
2010年3月 (3)
友情連接
搜索
最新評(píng)論
1.?re: 對(duì)“隨筆”所寫的一篇文章《鏈表實(shí)驗(yàn)》的一點(diǎn)看法
評(píng)論內(nèi)容較長,點(diǎn)擊標(biāo)題查看
--陳梓瀚(vczh)
2.?re: 對(duì)“隨筆”所寫的一篇文章《鏈表實(shí)驗(yàn)》的一點(diǎn)看法
謝謝咯,呵呵。我喜歡這代碼風(fēng)格,向你學(xué)習(xí)
--あ維wêiセ
3.?re: 一種基于引用計(jì)數(shù)機(jī)制的智能指針實(shí)現(xiàn)
把A *p = new A();這句換成A p;不行嗎?
--叫我老王吧
4.?re: 一種基于引用計(jì)數(shù)機(jī)制的智能指針實(shí)現(xiàn)
Boost 里面有,在C++ TR1 里面也已經(jīng)有這種指針(就是來自Boost)
--Phuehvk
5.?re: 一種基于引用計(jì)數(shù)機(jī)制的智能指針實(shí)現(xiàn)[未登錄]
比較討厭這種引用計(jì)數(shù)指針的使用,一旦使用就意味這在所有的函數(shù)參數(shù)中必須使用指針引用或者值拷貝,一旦某些函數(shù)要求用裸指針,就可能引發(fā)問題。
--hdqqq
閱讀排行榜
1.?一道面試題(求一個(gè)unsigned int 數(shù)的二進(jìn)制表示中有多少個(gè)1?)(6210)
2.?一種線程安全的單例模式實(shí)現(xiàn)方式(5786)
3.?一種基于引用計(jì)數(shù)機(jī)制的智能指針實(shí)現(xiàn)(2967)
4.?不要把類的外衣脫下來,讓類的美麗消失于無形(2819)
5.?幾道面試題,有的做出來了,有的不會(huì)做,請(qǐng)大家指教(2656)
評(píng)論排行榜
1.?一道面試題(求一個(gè)unsigned int 數(shù)的二進(jìn)制表示中有多少個(gè)1?)(15)
2.?一種線程安全的單例模式實(shí)現(xiàn)方式(15)
3.?幾道面試題,有的做出來了,有的不會(huì)做,請(qǐng)大家指教(14)
4.?令人氣憤的現(xiàn)象(13)
5.?不要把類的外衣脫下來,讓類的美麗消失于無形(9)
Copyright ©2025 OnTheWay Powered By
博客園
模板提供:
滬江博客
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
国产欧美韩日
|
欧美国产第一页
|
午夜亚洲福利在线老司机
|
欧美日韩视频专区在线播放
|
欧美视频一区二区在线观看
|
久久久精品一品道一区
|
性欧美长视频
|
国产综合香蕉五月婷在线
|
久久久久久穴
|
久久久久久久999
|
亚洲国产成人一区
|
亚洲第一在线视频
|
欧美不卡激情三级在线观看
|
亚洲精品美女在线观看
|
亚洲国产成人av
|
欧美日本一区
|
亚洲综合精品自拍
|
亚洲女与黑人做爰
|
国产精品人人做人人爽
|
欧美一区二区黄
|
久久国产高清
|
亚洲国产免费看
|
亚洲精品一区二区三区在线观看
|
欧美日韩国产综合新一区
|
亚洲一区一卡
|
亚洲欧美另类在线观看
|
精品99一区二区
|
亚洲国产精品久久久久秋霞蜜臀
|
欧美久色视频
|
欧美一区二区三区在线看
|
欧美一区网站
|
亚洲国产美国国产综合一区二区
|
亚洲激情网站
|
国产精品毛片va一区二区三区
|
欧美99久久
|
一区二区三区精品
|
亚洲综合首页
|
在线免费观看日本欧美
|
亚洲激情成人网
|
国产精品国产自产拍高清av王其
|
在线免费观看日韩欧美
|
亚洲肉体裸体xxxx137
|
欧美午夜美女看片
|
欧美中文在线免费
|
久久精品1区
|
99在线精品免费视频九九视
|
亚洲午夜视频在线
|
在线播放精品
|
一本色道久久精品
|
黄色成人av
|
99国产精品国产精品久久
|
国产视频自拍一区
|
亚洲国产精品va在线看黑人
|
国产精品久久久99
|
香蕉久久国产
|
免费影视亚洲
|
欧美一区二区三区日韩
|
巨乳诱惑日韩免费av
|
亚洲资源在线观看
|
久久不射中文字幕
|
99精品黄色片免费大全
|
欧美在线黄色
|
一区二区三区视频观看
|
欧美一级免费视频
|
久久久久9999亚洲精品
|
免费永久网站黄欧美
|
性欧美暴力猛交69hd
|
免费永久网站黄欧美
|
欧美一区国产二区
|
欧美不卡视频一区
|
久久av一区二区三区漫画
|
欧美激情网友自拍
|
久久人体大胆视频
|
欧美视频在线观看
|
欧美国产激情
|
国产亚洲一区二区精品
|
99香蕉国产精品偷在线观看
|
伊人蜜桃色噜噜激情综合
|
一区二区免费在线视频
|
亚洲人www
|
久久超碰97人人做人人爱
|
亚洲一区制服诱惑
|
久久一区欧美
|
久久国产毛片
|
欧美日韩一区二区三区高清
|
久久黄色网页
|
国产精品久久久久久久久久三级
|
欧美激情在线免费观看
|
国内精品久久久久伊人av
|
在线视频精品一区
|
亚洲精品小视频在线观看
|
香蕉成人久久
|
亚洲欧美三级在线
|
欧美日韩国内自拍
|
亚洲高清av
|
狠狠色狠色综合曰曰
|
亚洲专区欧美专区
|
亚洲一区二区视频
|
欧美经典一区二区三区
|
欧美风情在线观看
|
国语精品一区
|
香蕉久久精品日日躁夜夜躁
|
亚洲天天影视
|
欧美另类综合
|
亚洲国产一区二区三区青草影视
|
在线观看日韩专区
|
欧美一区二区在线免费播放
|
香蕉久久国产
|
国产精品免费久久久久久
|
99re这里只有精品6
|
日韩午夜电影
|
蜜桃av一区二区三区
|
美女视频一区免费观看
|
国产一区二区精品久久99
|
亚洲欧美日韩精品
|
午夜久久久久久
|
国产精品久久久一区麻豆最新章节
|
在线视频你懂得一区二区三区
|
久久字幕精品一区
|
欧美 日韩 国产一区二区在线视频
|
国产午夜精品全部视频播放
|
午夜一区在线
|
久久久久久久久久久久久女国产乱
|
国产精品久久久久久久7电影
|
9i看片成人免费高清
|
亚洲一级黄色
|
国产精品久久久一区麻豆最新章节
|
一区二区三区视频在线观看
|
亚洲一区二区三区乱码aⅴ
|
欧美天天影院
|
亚洲一区二区三区四区视频
|
午夜精品久久久久久久99水蜜桃
|
亚洲欧美另类中文字幕
|
性高湖久久久久久久久
|
国产精品国产三级国产普通话三级
|
一区二区三区精品
|
午夜精品免费在线
|
国产乱码精品一区二区三区五月婷
|
亚洲男人的天堂在线
|
欧美在线不卡
|
黄色国产精品
|
欧美ab在线视频
|
亚洲精品久久久蜜桃
|
宅男精品视频
|
国产精品亚洲网站
|
欧美在线视频观看
|
麻豆国产精品777777在线
|
亚洲高清视频一区二区
|
欧美激情亚洲一区
|
中文日韩在线
|
午夜视频在线观看一区二区
|
国产一区二区三区免费在线观看
|
久久精品免费观看
|
欧美激情一区二区
|
一区二区三区.www
|
欧美日韩免费观看一区三区
|
亚洲综合999
|
久久夜色精品国产亚洲aⅴ
|
亚洲第一在线综合网站
|
欧美噜噜久久久xxx
|
亚洲欧美国产毛片在线
|
美国成人毛片
|
亚洲毛片在线观看.
|
欧美午夜视频一区二区
|
欧美主播一区二区三区美女 久久精品人
|
国产精品女人毛片
|
香蕉久久夜色
|
欧美激情一级片一区二区
|
亚洲性夜色噜噜噜7777
|
国产性猛交xxxx免费看久久
|
久久综合九色综合欧美狠狠
|
亚洲毛片视频
|
久久久91精品
|
亚洲精品婷婷
|
国产精品一二
|
免费看的黄色欧美网站
|
亚洲视频在线观看
|
你懂的成人av
|
亚洲欧美日韩区
|
亚洲成人在线
|
国产精品久久波多野结衣
|
久久青草欧美一区二区三区
|
亚洲最新中文字幕
|
麻豆精品精华液
|
亚洲免费视频成人
|
在线观看一区视频
|
国产精品激情av在线播放
|
久久综合国产精品
|
亚洲一区二区欧美日韩
|
欧美777四色影视在线
|
亚洲综合欧美
|
亚洲精品美女在线
|
国产亚洲亚洲
|
欧美婷婷久久
|
免费在线视频一区
|
欧美伊人影院
|
一区二区三区视频免费在线观看
|
欧美成人激情在线
|
午夜精品久久久久
|
日韩视频二区
|