JavaScript实现查找字符串中第一个不重复的字符


Posted in Javascript onDecember 29, 2014

此算法仅供参考,小菜基本不懂高深的算法,只能用最朴实的思想去表达。

 //找出字符串中第一个不重复的字符

 // firstUniqueChar("vdctdvc"); --> t

 function firstUniqueChar(str){

   var str = str || "",

       i = 0,

       k = "",

       _char = "",

       charMap = {},

       result = {name: "",index: str.length};

   for(i=0;i<str.length;i++){

     _char = str.charAt(i);

     if(charMap[_char] != undefined){

       charMap[_char] = -1;

     }else{

       charMap[_char] = i;

     }

   }

   for(k in charMap){

     if(charMap[k]<0){

       continue;

     }

     if(result.index>charMap[k]){

       result.index = charMap[k];

       result.name = k;

     }

   }

   return result.name;

 }

小伙伴们如有更好的思路,还请告之一下,不胜感激

Javascript 相关文章推荐
jQuery的deferred对象使用详解
Aug 20 Javascript
关于IE BUG与字符串截取substr的解决办法
Apr 10 Javascript
判断ie的两种简单方法
Aug 12 Javascript
jQuery学习笔记之jQuery+CSS3的浏览器兼容性
Jan 19 Javascript
JQuery节点元素属性操作方法
Jun 11 Javascript
javascript字符串函数汇总
Dec 06 Javascript
jquery使用EasyUI Tree异步加载JSON数据(生成树)
Feb 11 Javascript
Javascript中Promise的四种常用方法总结
Jul 14 Javascript
vue权限路由实现的方法示例总结
Jul 29 Javascript
Vue axios设置访问基础路径方法
Sep 19 Javascript
layui弹出框Tab选项卡的示例代码
Sep 04 Javascript
vue抽出组件并传值实例
Jul 31 Javascript
基于jQuery的JavaScript模版引擎JsRender使用指南
Dec 29 #Javascript
JavaScript中的数学运算介绍
Dec 29 #Javascript
jQuery中:lt选择器用法实例
Dec 29 #Javascript
JavaScript中的数值范围介绍
Dec 29 #Javascript
JavaScript常用小技巧小结
Dec 29 #Javascript
jQuery中:gt选择器用法实例
Dec 29 #Javascript
在浏览器中实现图片粘贴的jQuery插件-- pasteimg使用指南
Dec 29 #Javascript
You might like
PHP生成不重复随机数的方法汇总
2014/11/19 PHP
Laravel 5框架学习之日期,Mutator 和 Scope
2015/04/08 PHP
浅谈php中include文件变量作用域
2015/06/18 PHP
thinkPHP5.0框架安装教程
2017/03/25 PHP
PHP实现执行外部程序的方法详解
2017/08/17 PHP
PHP反射学习入门示例
2019/06/14 PHP
php设计模式之原型模式分析【星际争霸游戏案例】
2020/03/23 PHP
JavaScript数值数组排序示例分享
2014/05/27 Javascript
IE及IE6浏览器中判断JS文件加载成功失败的方法
2015/02/18 Javascript
jQuery实现鼠标双击Table单元格变成文本框及输入内容后更新到数据库的方法
2015/11/25 Javascript
基于HTML+CSS+JS实现增加删除修改tab导航特效代码
2016/08/05 Javascript
JS实现基于拖拽改变物体大小的方法
2018/01/23 Javascript
Javascript格式化并高亮xml字符串的方法及注意事项
2018/08/13 Javascript
angular.js实现列表orderby排序的方法
2018/10/02 Javascript
微信小程序实现基于三元运算验证手机号/姓名功能示例
2019/01/19 Javascript
vue页面加载时的进度条功能(实例代码)
2020/01/13 Javascript
ES6扩展运算符和rest运算符用法实例分析
2020/05/23 Javascript
[08:56]DOTA2-DPC中国联赛2月23日Recap集锦
2021/03/11 DOTA
python之yield表达式学习
2014/09/02 Python
python通过加号运算符操作列表的方法
2015/07/28 Python
用Python进行简单图像识别(验证码)
2018/01/19 Python
对Python闭包与延迟绑定的方法详解
2019/01/07 Python
Python占用的内存优化教程
2019/07/28 Python
TensorFlow tf.nn.softmax_cross_entropy_with_logits的用法
2020/04/19 Python
python tkiner实现 一个小小的图片翻页功能的示例代码
2020/06/24 Python
Numpy实现卷积神经网络(CNN)的示例
2020/10/09 Python
基于python实现监听Rabbitmq系统日志代码示例
2020/11/28 Python
Java的接口和C++的虚类的相同和不同处
2014/03/27 面试题
求职信内容考虑哪几点
2013/10/05 职场文书
幼儿园教师的考核评语
2014/04/18 职场文书
公积金接收函格式
2015/01/30 职场文书
婚宴新娘致辞
2015/07/28 职场文书
毕业感言怎么写
2015/07/31 职场文书
一篇文章带你复习java知识点
2021/06/28 Java/Android
SpringCloud之@FeignClient()注解的使用方式
2021/09/25 Java/Android
《乙女游戏世界对路人角色很不友好》OP主题曲无字幕动画MV公开
2022/04/05 日漫