在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問(wèn)答/C/ 代碼看不明白:我不懂其中的str[len-i-1]是什么意思, 還有i用來(lái)干嘛的

代碼看不明白:我不懂其中的str[len-i-1]是什么意思, 還有i用來(lái)干嘛的

要求把這段字符串逆序存放,在網(wǎng)上找到答案,但是有一個(gè)代碼看不明白,有哪位大神能幫我解惑?圖片描述

我不懂其中的str[len-i-1]是什么意思,
還有i用來(lái)干嘛的

回答
編輯回答
神經(jīng)質(zhì)

len 是str的總長(zhǎng)度 i下標(biāo)索引

2018年9月14日 19:58
編輯回答
司令

len是總長(zhǎng),len-1是尾元素的下標(biāo)。
所以你這段逆序的實(shí)現(xiàn)方法是頭尾進(jìn)行交換,頭+i位置和尾-i位置交換,即str[i]和str[len-1-i]進(jìn)行交換。
實(shí)在理解不了可以代入實(shí)數(shù)來(lái)加強(qiáng)理解。

當(dāng)i = 0時(shí)(第一個(gè)元素下標(biāo)),len-1-i = 最后一個(gè)元素下標(biāo)。
當(dāng)i = 1時(shí)(第二個(gè)元素下標(biāo)),len-1-i = 倒數(shù)第二個(gè)元素的下標(biāo)。

依次就完成了逆序。

2018年9月15日 17:15
編輯回答
囍槑

我來(lái)解釋一下
i為當(dāng)前元素的索引(下標(biāo)), len-1-i 為對(duì)應(yīng)反轉(zhuǎn)元素的索引(下標(biāo))

//舉個(gè)簡(jiǎn)單的例子:
var str = 'abcd'
i 為0  元素為'a'  那么反轉(zhuǎn)元素就為 len(字符串長(zhǎng)度為4) -1 - i  就是索引(下標(biāo))為3的元素 'd'
i 為1  元素為'b'  那么反轉(zhuǎn)元素就為 len(字符串長(zhǎng)度為4) -1 - i  就是索引(下標(biāo))為2的元素 'c'
                    ..... 以此類推
        相信你明白了            
                    
   

2017年11月8日 05:56
編輯回答
脾氣硬

額,前端飄過(guò):
首先,i是for循環(huán)中當(dāng)前對(duì)象的索引,為什么i<len/2是什么意思呢,這是說(shuō)根據(jù)這個(gè)字符串的長(zhǎng)度,循環(huán)次數(shù)為長(zhǎng)度的一半,然后遞增循環(huán),直到結(jié)束。然后循環(huán)的時(shí)候,temp記錄當(dāng)前循環(huán)出來(lái)的這個(gè)字符,同時(shí),將它和它對(duì)應(yīng)的那個(gè)索引下標(biāo)字符交換(之前理解錯(cuò)了,意思是如字符長(zhǎng)度為100,當(dāng)前循環(huán)到下標(biāo)為3,那么它對(duì)應(yīng)的那個(gè)下標(biāo)就為96,然后把3這個(gè)下標(biāo)的字符和96這個(gè)下標(biāo)的字符交換)的一個(gè)字符交換位子。最后puts(輸出?)字符串

2017年8月14日 13:25