【★】字母距离

314 阅读1分钟

在这里插入图片描述

>字母距离<

两个字母之间的距离定义为它们在字母表中位置的距离。例如 AC 的距离为2,LQ 的距离为 5。对于一个字符串,我们称字符串中两两字符之间的距离之和为字符串的内部距离。例如:ZOO 的内部距离为 22,其中 ZO 的距离为 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;
    }
}

运行结果截图如下: 运行结果截图