主要记录算法练习题,从各种不同的环境上收集的
前言
pass
提示:以下是本篇文章正文内容,下面采用Python语法案例可供参考。
一、字符串类
pass
1.求出现最多的字符串和出现的次数
思路:
ch=input()
temp=[]
for i in ch:
n=ch.count(i)
temp.append(n)
t=max(temp)
# 求出现最多的字符
for i in range(len(ch)):
if t!=temp[i]:
continue
k=ch[i]
# k出现最多的字符 t出现的次数
print(f'{k},{t}',ord(k))
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
public class count {
public static void main(String[] args) throws Exception {
Scanner input = new Scanner(System.in);
String Str = input.next();
char[] StrArr = Str.toCharArray();// 把字符串转为字符数组toCharArray
Map<Character, Integer> map = new HashMap<Character, Integer>();
if (!(StrArr == null || StrArr.length == 0))// 先判断字符数组是否为空
for (int i = 0; i < StrArr.length; i++)
if (null != map.get(StrArr[i]))
// 若不为空,说明已经存在相同字符,则Value值在原来的基础上加1
map.put(StrArr[i], map.get(StrArr[i]) + 1);
else
map.put(StrArr[i], 1);
// 找map中Value的最大值maxValue,类似于选择排序,寻找最大值的过程:
// 先任取一个Value值定义为最大值,然后与之比较
int maxValue = map.get(StrArr[0]);
char ch = StrArr[0];
for (int j = 0; j < StrArr.length; j++)
if (maxValue < map.get(StrArr[j])) {
maxValue = map.get(StrArr[j]);
ch = StrArr[j];
}
System.out.println("现次数最多的字符:" + ch + " 出现次数:" + maxValue + "ASCII为:"+ (int)ch);
}
}
☆ 字符串章节-总结 ☆
二、b
pass
三、c
pass
四、d
pass
总结
pass