`

程序员面试题精选100题(13)-第一个只出现一次的字符

阅读更多
题目:在一个字符串中找到第一个只出现一次的字符。如输入abaccdeff,则输出b。

思路:第一个==》我们需要一个有序表, 第一次==》我们需要计算次数


LinkedHashMap<String,Integer> map= new LinkedHashMap<String,Integer>; 

public void a(String[] arr){
   for(int i=0;i<arr.length;i++){
         Integer j = map.get(i);
         if(j==null){
           map.put(arr[i],0);
         }else{
           map.put(arr[i],j++);
         }
   }
   //遍历这个map,找到第一个 value=1的就ok了
}
分享到:
评论

相关推荐

    程序员面试题精选100题

    【程序员面试题精选100题】是一份中文Word文档,包含了针对程序员的100道面试题目,这些题目详细解答了如何准备编程面试,尤其是技术面试环节。面试是求职过程中至关重要的一环,它能让雇主直接评估应聘者的技能和...

    程序员面试题精选100题.doc

    - **实现细节**:遍历字符串两次,第一次建立哈希表,第二次根据哈希表找到第一个只出现一次的字符。 - **性能分析**:时间复杂度为O(n),空间复杂度也为O(n)。 ### 14. 圆圈中最后剩下的数字 - **约瑟夫环问题**...

    C/C++程序员面试指南.杨国祥(带详细书签).pdf

    面试题13:建立一个二叉树 面试题14:计算一棵二叉树的深度 面试题15:在二元树中找出和为某一值的所有路径 第11章 排序 11.1 插入排序 面试题1:编码实现直接插入排序 面试题2:编码实现希尔(Shell)排序 11.2 ...

    大型公司程序员面试题

    1. **斐波那契数列**:这是一个典型的递归问题,斐波那契数列的第n位数F(n)可以通过前两位数F(n-1)和F(n-2)相加得到。递归算法可以这样表示: ```csharp int Fibonacci(int n) { if (n &lt;= 1) return n; return ...

    java程序员面试题算法

    【程序 1】:这是一个经典的斐波那契数列问题,也称为兔子繁殖问题。斐波那契数列的规律是:每个数是前两个数的和,初始值为1,1。这个问题可以通过递归或者动态规划来解决,但递归可能会导致大量的重复计算,所以更...

    2010 程序员 笔试面试题

    这些变量在整个程序执行期间都存在,并且只有在第一次被调用时初始化一次。 ### 4. 同一进程中的资源分配 - **知识点**: 进程资源分配的位置。 - **题目**: 4. 在同一进程中,哪些资源是每个线程特有的? - A. 栈 ...

    程序员面试C++笔试题(附部分答案)

    - **详细解释**: 给定一个字符串,如"ababc",任务是找出该字符串中最长连续重复子串。在这个例子中,"ab"是连续重复出现且最长的子串。 - **解决方案**: 可以遍历字符串并检查每个子串是否连续重复出现,同时记录...

    上海地区(杭州一带)面试java程序员必考的题目。

    - 正确的方法是定义一个足够小的误差范围 `EPSILON`,然后使用 `(x &gt;= -EPSILON) && (x )` 来检查浮点数是否接近于零。 - 示例代码: ```c++ const float EPSILON = 0.00001; if ((x &gt;= -EPSILON) && (x )) { //...

    c++ 面试题 总结

    C++面试题 1.是不是一个父类写了一个virtual 函数,如果子类覆盖它的函数不加virtual ,也能实现多态? virtual修饰符会被隐形继承的。 private 也被集成,只事派生类没有访问权限而已 virtual可加可不加 子类的...

    c++程序员公司面试题

    第一段代码可能引发的问题在于,如果试图修改字符串(例如 `str[0] = 'H';`),程序将违反只读内存的规则,可能导致崩溃或其他错误。而第二段代码的问题在于,虽然数组本身可变,但如果尝试存储超过13个字符(包括...

    程序员经典50题带分析

    1. **兔子问题**:这是一个典型的斐波那契数列问题,兔子的繁殖规律可以表示为数列 1, 1, 2, 3, 5, 8, 13, ...。斐波那契数列的每一个数都是前两个数的和,可以通过递归或动态规划算法解决。 2. **素数判断**:对于...

    java面试题-leetcode题解之第13题罗马数字转整数.zip

    第13题“罗马数字转整数”是一个典型的字符串处理与数学结合的问题,对于Java开发者来说,理解并掌握这类问题的解法非常重要。 在罗马数字系统中,数字由七个基本符号表示:I(1),V(5),X(10),L(50),C...

    java程序员最可能被考到的面试题.pdf,这是一份不错的文件

    - 找到链表倒数第三个元素:用两个指针,先让一个指针走三步,然后两个一起走,当先走的指针到末尾时,另一个指针指向倒数第三个元素。 2. **数组操作**: - 找到唯一重复的元素:将数组元素总和减去1到100的总和...

    C++注意的概念(面试题)

    `: 此处定义了一个指向字符的指针`pc`,并将其初始化为`str`的地址,即`pc`现在指向字符串的第一个字符'A'。 - `short x = 33;`: 定义了一个短整型变量`x`,并赋值为33。 - `short *px = &x;`: 定义了一个指向短...

    Unity3d面试题100道.pdf

    综合以上内容,Unity3D面试题的知识点涵盖了程序的执行、物理引擎、内存管理、编程模型、网络协议、场景构建、资源管理、光源类型、游戏优化等多个方面,是对Unity3D相关知识的全面考察。掌握这些知识点,对于通过...

    Python面试题128.pdf

    - 利用模块级别变量,第一次导入模块时创建单例。 4. **反转整数**: 反转整数需要考虑负数的情况。可以先将负号保存,然后通过除以10和取余运算反转正数部分,最后加上负号。注意防止溢出。 5. **Python基础...

    java面试-leetcode面试题解之第13题罗马数字转整数-编程.zip

    第13题是“罗马数字转整数”,这是一个常见的算法问题,涉及到字符串处理和基本的数学逻辑。本题要求我们将罗马数字转换为对应的整数值,这对于理解基础数据结构和算法的程序员来说是一个很好的练习。 罗马数字由七...

    第12套PHP面试题1

    题目要求用100元钱购买100只鸡(公鸡、母鸡和小鸡),其中公鸡3元,母鸡5元,小鸡1元3只。解题思路是通过穷举法,分别设定公鸡、母鸡和小鸡的数量,检查是否满足条件。给定的伪代码使用了三层嵌套循环,分别对应小鸡...

Global site tag (gtag.js) - Google Analytics