>字母距离<
两个字母之间的距离定义为它们在字母表中位置的距离。例如 A
和 C
的距离为2,L
和 Q
的距离为 5
。对于一个字符串,我们称字符串中两两字符之间的距离之和为字符串的内部距离。例如:ZOO
的内部距离为 22
,其中 Z
和 O
的距离为 11
。请问,WATJKJDXRGZNXYTW
的内部距离是多少?
说明:
1.两个字母之间的距离定义为它们在字母表中位置的距离。
一、解题思路
1、解法一( Java )
解法思路:(暴力法 )通过 Java abs()
方法返回参数的绝对值,枚举两个字符差的绝对值。
代码如下:
public class Distance {
public static void main(String[] args) {
System.out.println(getLength("WATJKJDXRGZNXYTW"));
}
public static int getLength(String str){
int ans=0;
int n=str.length();
int right=0;
while(right<n){
char r_ch=str.charAt(right);
for(int left=0;left<right;left++) {
char l_ch = str.charAt(left);
ans += Math.abs(r_ch - l_ch);
}
right++;
}
return ans;
}
}
运行结果截图如下: