要从字符流中找到第一个非重复字符,Java代码如下-
import java.util.ArrayList; import java.util.List; public class Demo{ final static int max_chars = 256; static void non_repeating_char(){ List<Character> my_list = new ArrayList<Character>(); boolean[] repeat = new boolean[max_chars]; String my_str = "Thisisasample"; for (int i = 0; i < my_str.length(); i++){ char x = my_str.charAt(i); if (!repeat[x]){ if (!(my_list.contains(x))){ my_list.add(x); } else{ my_list.remove((Character)x); repeat[x] = true; } } if (my_list.size() != 0){ System.out.print("字符串的第一个非重复字符是 "); System.out.println(my_list.get(0)); } } } public static void main(String[] args){ non_repeating_char(); } }
输出结果
字符串的第一个非重复字符是 T 字符串的第一个非重复字符是 T 字符串的第一个非重复字符是 T 字符串的第一个非重复字符是 T 字符串的第一个非重复字符是 T 字符串的第一个非重复字符是 T 字符串的第一个非重复字符是 T 字符串的第一个非重复字符是 T 字符串的第一个非重复字符是 T 字符串的第一个非重复字符是 T 字符串的第一个非重复字符是 T 字符串的第一个非重复字符是 T 字符串的第一个非重复字符是 T
名为Demo的类包含一个名为“non_repeating_char的函数。 创建一个列表并定义一个字符串。 重复此字符串,检查每个字符,并将其计数以布尔变量的形式存储在名为“ repeat”的数组中。 如果重复,则该值为true,否则为false。 在主函数中,将调用该函数,并在控制台上显示相关消息。
问题内容: 在 java 中查找字符串中的第一个非重复字符? 问题答案: 有多种方法可以找到它。 他们之中有一些是: 使用LinkedHashMap 使用 indexOf 和 lastIndexOf 方法。 面试问题之一是“你将如何在 String 中找到第一个非重复字符。” 例如: 如果输入字符串是“analogy”,那么程序应该返回’n’ 如果输入字符串是“easyest”,那么程序应该返回’
本文向大家介绍在JavaScript中查找字符串的第一个非重复字符,包括了在JavaScript中查找字符串的第一个非重复字符的使用技巧和注意事项,需要的朋友参考一下 我们需要编写一个JavaScript函数,该函数将字符串作为第一个也是唯一的参数。 该函数应该找到并返回它在字符串中遇到的第一个字符的索引,该字符串在字符串中仅出现一次。 如果字符串不包含任何唯一字符,则函数应返回-1。 例如- 如
NowCoder 题目描述 请实现一个函数用来找出字符流中第一个只出现一次的字符。例如,当从字符流中只读出前两个字符 "go" 时,第一个只出现一次的字符是 "g"。当从该字符流中读出前六个字符“google" 时,第一个只出现一次的字符是 "l"。 解题思路 // java private int[] cnts = new int[256]; private Queue queue = new
一、题目 请实现一个函数用来找出字符流中第一个只出现一次的字符。 举例说明 例如,当从字符流中只读出前两个字符“Go”时,第一个只出现一次的字符是‘g’。当从该字符流中读出前六个字符“google”时,第一个只出现1次的字符是”l”。 二、解题思路 字符只能一个接着一个从字符流中读出来。可以定义一个数据容器来保存字符在字符流中的位置。当一个字符第一次从字符流中读出来时,把它在字符流中的位置保存到数
为什么下面的方法只检查提供的字符串中的第一个字符? 例如,以下字符串返回false:“abc”但“abc”返回true。
本文向大家介绍给你一个字符串,找出第一个不重复的字符,如“abbbabcd”,则第一个不重复就是c相关面试题,主要包含被问及给你一个字符串,找出第一个不重复的字符,如“abbbabcd”,则第一个不重复就是c时的应答技巧和注意事项,需要的朋友参考一下 参考回答: 使用哈希的思想,建立256个bool数组array,初始都为false,从头开始扫描字符串,扫到一个,将以其ascii码为下标的元素置t