check Str's Character appearence frequence is ge 1
import com.sun.org.apache.bcel.internal.generic.IF_ACMPEQ;
import java.util.*;
public class HackerRankTest {
public static void main(String[] args) {
String srcStr="We promptly judged antique ivory buckles for the next prize";
String srcStr1="We promptly judged antique ivory buckles for the prize";
boolean checkStrIsSubStr = checkStrIsSubStr(srcStr);
if (checkStrIsSubStr){
System.out.println("pangram");
}else {
System.out.println("not pangram");
}
boolean checkStrIsSubStr1 = checkStrIsSubStr(srcStr1);
if (checkStrIsSubStr1){
System.out.println("pangram");
}else {
System.out.println("not pangram");
}
}
/**
* judge Str's Character appearence frequence is ge 1.
* @param srcStr
* @return
*/
public static boolean checkStrIsSubStr(String srcStr){
if (srcStr==null){
return false;
}
if (srcStr.isEmpty()){
return false;
}
int length = srcStr.length();
if (length<1 || length>1000){
return false;
}
for (int i = 0; i < length; i++) {
char charAt = srcStr.charAt(i);
if (charAt==' '){
continue;
}else if (charAt>='A' && charAt<= 'z'){
continue;
}else {
return false;
}
}
HashMap<Character, Integer> characterIntegerHashMap = new HashMap<Character, Integer>();
String srcStrDest = srcStr.replaceAll("\\s", "&");
for (int i = 0; i < length; i++) {
char charAt = srcStrDest.charAt(i);
if (characterIntegerHashMap.containsKey(charAt)){
characterIntegerHashMap.put(charAt,characterIntegerHashMap.get(charAt)+1);
}else {
characterIntegerHashMap.put(charAt,1);
}
}
ArrayList<CustomerCharacterRec> customerCharacterRecArrayList = new ArrayList<CustomerCharacterRec>();
for (Map.Entry<Character,Integer> entry: characterIntegerHashMap.entrySet()) {
Character key = entry.getKey();
Integer entryValue = entry.getValue();
CustomerCharacterRec customerCharacterRec = new CustomerCharacterRec();
UUID randomUUID = UUID.randomUUID();
String toString = randomUUID.toString();
customerCharacterRec.setId(toString);
customerCharacterRec.setSrcCharacter(key);
customerCharacterRec.setCountFrequence(entryValue);
customerCharacterRecArrayList.add(customerCharacterRec);
}
System.out.println(customerCharacterRecArrayList);
String srcStrStr=" ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
HashMap<Character, Integer> characterIntegerHashMap1Src = new HashMap<Character, Integer>();
for (int i = 0; i < srcStrStr.length(); i++) {
char charAt = srcStrStr.charAt(i);
if (charAt==' '){
charAt='&';
}
characterIntegerHashMap1Src.put(charAt,1);
}
ArrayList<CustomerCharacterRec> customerCharacterRecs1SrcList = new ArrayList<CustomerCharacterRec>();
for (Map.Entry<Character,Integer> entry : characterIntegerHashMap1Src.entrySet()) {
Character key = entry.getKey();
Integer entryValue = entry.getValue();
CustomerCharacterRec customerCharacterRecSrc = new CustomerCharacterRec();
UUID randomUUID = UUID.randomUUID();
String toString = randomUUID.toString();
customerCharacterRecSrc.setId(toString);
customerCharacterRecSrc.setSrcCharacter(key);
customerCharacterRecSrc.setCountFrequence(entryValue);
customerCharacterRecs1SrcList.add(customerCharacterRecSrc);
}
System.out.println("---------srcDataSet------");
// System.out.println(customerCharacterRecs1SrcList);
Collections.sort(customerCharacterRecs1SrcList,new Comparator<CustomerCharacterRec>() {
@Override
public int compare(CustomerCharacterRec o1, CustomerCharacterRec o2) {
if (o1.getSrcCharacter()>o2.getSrcCharacter()){
return 1;
}else if(o1.getSrcCharacter()<o2.getSrcCharacter()){
return -1;
}
return 0;
}
});
System.out.println(customerCharacterRecs1SrcList);
Collections.sort(customerCharacterRecArrayList, new Comparator<CustomerCharacterRec>() {
@Override
public int compare(CustomerCharacterRec o1, CustomerCharacterRec o2) {
if (o1.getSrcCharacter()>o2.getSrcCharacter()){
return 1;
}else if (o1.getSrcCharacter()<o2.getSrcCharacter()){
return -1;
}
return 0;
}
});
System.out.println(customerCharacterRecArrayList);
for (CustomerCharacterRec customerCharacterRec : customerCharacterRecs1SrcList) {
Character srcCharacter = customerCharacterRec.getSrcCharacter();
Integer countFrequence = customerCharacterRec.getCountFrequence();
for (CustomerCharacterRec characterRec : customerCharacterRecArrayList) {
Character srcCharacter1 = characterRec.getSrcCharacter();
Integer countFrequence1 = characterRec.getCountFrequence();
if (srcCharacter==srcCharacter1){
if (countFrequence1>=countFrequence){
return true;
}else {
return false;
}
}
}
}
return false;
}
}
class CustomerCharacterRec{
private String id;
private Character srcCharacter;
private Integer countFrequence;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public Character getSrcCharacter() {
return srcCharacter;
}
public void setSrcCharacter(Character srcCharacter) {
this.srcCharacter = srcCharacter;
}
public Integer getCountFrequence() {
return countFrequence;
}
public void setCountFrequence(Integer countFrequence) {
this.countFrequence = countFrequence;
}
@Override
public String toString() {
return "CustomerCharacterRec{" +
"id='" + id + '\'' +
", srcCharacter=" + srcCharacter +
", countFrequence=" + countFrequence +
'}';
}
}
check Str's Character appearence frequence is ge 1的更多相关文章
- check windows return character
#ifndef _FILE_CHECK_H#define _FILE_CHECK_H#include <string.h>#include <vector> const int ...
- python之Character string
1.python字符串 字符串是 Python 中最常用的数据类型.我们可以使用引号('或")来创建字符串,l Python不支持单字符类型,单字符也在Python也是作为一个字符串使用. ...
- python基础===Character string
本文转自:python之Character string 1.python字符串 字符串是 Python 中最常用的数据类型.我们可以使用引号('或")来创建字符串,l Python不支持单 ...
- 【Python】python之Character string
1.python字符串 字符串是 Python 中最常用的数据类型.我们可以使用引号('或")来创建字符串,l Python不支持单字符类型,单字符也在Python也是作为一个字符串使用. ...
- Leetcode分类刷题答案&心得
Array 448.找出数组中所有消失的数 要求:整型数组取值为 1 ≤ a[i] ≤ n,n是数组大小,一些元素重复出现,找出[1,n]中没出现的数,实现时时间复杂度为O(n),并不占额外空间 思路 ...
- Java集合框架练习-计算表达式的值
最近在看<算法>这本书,正好看到一个计算表达式的问题,于是就打算写一下,也正好熟悉一下Java集合框架的使用,大致测试了一下,没啥问题. import java.util.*; /* * ...
- POJ2955:Brackets(区间DP)
Description We give the following inductive definition of a “regular brackets” sequence: the empty s ...
- Angular源代码学习笔记-原创
时间:2014年12月15日 14:15:10 /** * @license AngularJS v1.3.0-beta.15 * (c) 2010-2014 Google, Inc. http:// ...
- 【转】double-array trie 译文+心得
原文:http://blog.csdn.net/zzran/article/details/8462002 概论 下面将呈现一种新的内部数组结构,它便是double-array.double-arra ...
- 201521123070 《JAVA程序设计》第7周学习总结
1. 本章学习总结 以你喜欢的方式(思维导图或其他)归纳总结集合相关内容. 2. 书面作业 Q1. ArrayList代码分析 1.1 解释ArrayList的contains源代码 源代码: pub ...
随机推荐
- XIP技术与Flash
XIP技术与Flash 参考: 串行NAND Flash的两大特性导致其在i.MXRT FLASH控制器下无法XiP norflash芯片内执行(XIP) NOR Flash 和 NAND Flash ...
- tcp_tw_reuse、tcp_tw_recycle、tcp_fin_timeout参数介绍
参数介绍 net.ipv4.tcp_tw_reuse = 1 表示开启重用.允许将TIME-WAIT sockets重新用于新的TCP连接,默认为0,表示关闭: net.ipv4.tcp_tw_rec ...
- TI AM62x工业开发板规格书(单/双/四核ARM Cortex-A53 + 单核ARM Cortex-M4F,主频1.4GHz)
1 评估板简介 创龙科技TL62x-EVM是一款基于TI Sitara系列AM62x单/双/四核ARM Cortex-A53 + 单核ARM Cortex-M4F多核处理器设计的高性能低功耗工业评估板 ...
- Windows Android 子系统(WSA)安装
除了Linux子系统WSL,微软还提供了安卓子系统WSA.不过对国内好像不太友好,安装也不方便. 这里说一下我的安装方法,但是可能时效性很强,现在是2022-01-20,如果日期离得太远可能不好使. ...
- debian12 安装ch343驱动
前言 最近心血来潮,装了一台debian12玩,安装完毕arduino后发现没有ch343驱动,倒是在 ls /lib/modules/6.1.0-13-amd64/kernel/drivers/us ...
- [oeasy]python0008_输出h字符_REPL_引号_括号_什么是函数
输出h字符_REPL_引号_括号_什么是函数 回忆上次内容 上次 继续在游乐场里 玩耍 键盘按键 作用 ↑ 上一条指令 ↓ 下一条指令 ← 光标 向左移动 一格 → 光标 向右移动 一格 ctrl + ...
- 美团VS饿了么,到底谁更胜一筹?
最近啊,收到一个粉丝的投稿,我发现他在美团和饿了么都去面试过. 这俩企业大家应该都经常用吧,咱点外卖的时候,我有时候就琢磨,到底他俩谁更厉害点. 今天咱们就瞅瞅,在面试这块儿谁更难一些. (目前都只有 ...
- [翻译]欢迎使用C#9.0
本文由公众号[开发者精选资讯](微信号:yuantoutiao)翻译首发,转载请注明来源 C# 9.0 is taking shape, and I'd like to share our think ...
- VBA:用代码操作代码
Sub auto_open() Call runtimer '打开文档时自动运行 End Sub Sub runtimer() Application.OnTime Now + TimeValue(& ...
- 树莓派配置固定IP地址
树莓派配置固定IP地址 1.编辑文件/etc/dhcpcd.confroot@raspberrypi:~# vi /etc/dhcpcd.conf 2.修改以下参数配置,如果没有就在文件底部添加有线配 ...