去除重复字符并排序
来源:互联网 发布:互联网软件市场推广 编辑:程序博客网 时间:2024/05/23 12:08
运行时间限制:无限制
内容限制: 无限制
输入: 字符串
输出: 去除重复字符并排序的字符串
样例输入: aabcdefff
样例输出: abcdef
思路:
这个题用数组来哈希,时间复杂度为O(n)
1) 初始化一个int数组hash,数组的角标和数组的值正好构成一对<key,value>;
2) 遍历字符串,将每个字符放入数组中对应的位置,出现过得字符,其数组值为1
3) 遍历数组,输出数组中数组值为1所对应的字符
Java解法:
import java.util.Scanner;
public class Main
{
public static void main(String[] args){
Scanner cin=new Scanner(System.in);int hash[]=new int[256];if (cin.hasNext()){String temp=cin.next();func(temp, hash);}
}
public static void func(String str, int[] hash){
for (int i = 0; i < str.length(); i++){
char c=str.charAt(i);if (hash[c]==0){hash[c]=1;}
}for (int i = 0; i < hash.length; i++){
if (hash[i]!=0){char c=(char)i;System.out.print(c);}
}
}
}
0 0
- 去除重复字符并排序
- 去除重复字符并排序
- 去除重复字符并排序
- 去除重复字符并排序
- 去除重复字符并排序
- 去除重复字符并排序
- [华为机试真题][2014]62.去除重复字符并排序
- Java字符串题目--去除重复字符并排序
- 华为机试题C++-去除重复字符并排序
- 2016.3.18华为上机题目:去除重复字符并排序
- 正则表达式-去除重复字符并替换
- 2015届华为校园招聘机试题(去除重复字符并排序)
- 2015年 华为机试题 (二) 去除重复字符并排序
- 华为笔试1 去除重复字符并排序的字符串 c++ string 实现
- 除重复字符并排序
- 去除数组的重复元素并排序
- python 去除重复字符
- 去除重复字符
- 图片上传预览 获得像素长宽
- NET获取汉字的字节长度
- 如何用Excel画出一幅漂亮的甘特图?
- fatal error C1083: Cannot open program database file:.....idb||.pdb
- UVA 10480 Sabotage (最大流)
- 去除重复字符并排序
- EF6源码学习-准备篇
- spring(错误一) spring mvc上传多张图片,报错:java.lang.NoSuchMethodException解决方案
- Android应用:Service开发实例(二)之Service的两种创建方法和其生命周期
- ghost使用教程
- Visual studio未能正确加载“Microsoft.VisualStudio.Editor.Implementation.EditorPackage”包
- SEAndroid安全机制中的进程安全上下文关联分析
- 预防糖尿病
- OS开发中MD5加密算法的实现