日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

字符串之变形数

發(fā)布時(shí)間:2023/12/4 编程问答 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 字符串之变形数 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

字符串之變形數(shù)

題目:給定2個(gè)字符串str1和str2,如果str1和str2出現(xiàn)的字符種類和每個(gè)字符出現(xiàn)的個(gè)數(shù)也一樣,那么str1與str2互為變形數(shù)。請(qǐng)用函數(shù)實(shí)現(xiàn)。

 

例子:str1="123", str2="231" 返回 true

例子:str1="123", str2="2311" 返回 false;

 

解題思路

方法1:如果字符串str1和str2長(zhǎng)度不一樣肯定不是變形數(shù),如果相等的話,假設(shè)出現(xiàn)的的字符編碼為0~256,申請(qǐng)一個(gè)長(zhǎng)度為256的整形數(shù)組map,map[a]=b,表示字符a出現(xiàn)了b次,然后遍歷str1,比如遍歷到‘a(chǎn)’,那么是a[97]++,,然后遍歷str2,當(dāng)遍歷到‘a(chǎn)’,那么map[97]--,如果其中只要有一種情況小于0,那么肯定不是變形數(shù)字了,如果想不通,慢慢想,總會(huì)想得通的,加油。

方法2:既然str1和str2可以轉(zhuǎn)換成字符編碼0~256,而且每個(gè)可以把每個(gè)字符的編碼加起來,如果2個(gè)字符編碼都相等的話,那么是變形數(shù),前提是字符串的長(zhǎng)度是一樣的的,以防1+2+3=2+4;的情況出現(xiàn)。

 

下面是實(shí)現(xiàn)的java代碼

 

public class Changeword {public static void main(String[] args) {String str1="abcd",str2="abcdd",str3&#

總結(jié)

以上是生活随笔為你收集整理的字符串之变形数的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。