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 Study Notes 学习笔记(一)
Aug 04 Javascript
JQuery的Ajax跨域请求原理概述及实例
Apr 26 Javascript
解析jquery获取父窗口的元素
Jun 26 Javascript
用JavaScript实现类似于ListBox功能示例代码
Mar 09 Javascript
Jquery实现侧边栏跟随滚动条固定(兼容IE6)
Apr 02 Javascript
JavaScript程序设计之JS调试
Dec 09 Javascript
JS实现HTML表格排序功能
Aug 05 Javascript
微信小程序 wx.request(object) API详解及实例代码
Sep 30 Javascript
Bootstrap源码解读导航(6)
Dec 23 Javascript
详解Axios 如何取消已发送的请求
Oct 20 Javascript
jquery实现异步文件上传ajaxfileupload.js
Oct 23 jQuery
javascript代码实现简易计算器
Jan 25 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
3种平台下安装php4经验点滴
2006/10/09 PHP
Ubuntu12下编译安装PHP5.3开发环境
2015/03/27 PHP
PHP常见字符串操作函数与用法总结
2019/03/04 PHP
一个不错的应用,用于提交获取文章内容,不推荐用
2007/03/03 Javascript
jquery 防止表单重复提交代码
2010/01/21 Javascript
JQuery 1.4 中的Ajax问题
2010/01/23 Javascript
JSQL 批量图片切换的实现代码
2010/05/05 Javascript
javascript编写贪吃蛇游戏
2015/07/07 Javascript
如何在Linux上安装Node.js
2016/04/01 Javascript
js 创建对象 经典模式全面了解
2016/08/16 Javascript
Json按某个键的值进行排序
2016/12/22 Javascript
JavaScript之事件委托实例(附原生js和jQuery代码)
2017/07/22 jQuery
JavaScript正则表达式的贪婪匹配和非贪婪匹配
2017/09/05 Javascript
vue3.0实现插件封装
2020/12/14 Vue.js
[01:56]2014DOTA2西雅图邀请赛 MVP外卡赛老队长精辟点评
2014/07/09 DOTA
[10:28]2018DOTA2国际邀请赛寻真——VGJ.S寻梦之路
2018/08/15 DOTA
[01:57]2018年度DOTA2最具潜力解说-完美盛典
2018/12/16 DOTA
Python的Flask框架中Flask-Admin库的简单入门指引
2015/04/07 Python
Python实例一个类背后发生了什么
2016/02/09 Python
详解Python的Lambda函数与排序
2016/10/25 Python
python批量替换页眉页脚实例代码
2018/01/22 Python
django中静态文件配置static的方法
2018/05/20 Python
python 限制函数执行时间,自己实现timeout的实例
2019/01/12 Python
PYTHON EVAL的用法及注意事项解析
2019/09/06 Python
Python实现把多维数组展开成DataFrame
2019/11/30 Python
python 实现图片上传接口开发 并生成可以访问的图片url
2019/12/18 Python
使用python实现哈希表、字典、集合操作
2019/12/22 Python
基于Python实现人脸自动戴口罩系统
2020/02/06 Python
几款Python编译器比较与推荐(小结)
2020/10/15 Python
语文教学感言
2014/02/06 职场文书
小学优秀教育工作者事迹材料
2014/05/09 职场文书
社区活动总结
2015/02/04 职场文书
本溪水洞导游词
2015/02/11 职场文书
大学生党员个人总结
2015/02/13 职场文书
2015年世界急救日宣传活动方案
2015/05/06 职场文书
pytorch常用数据类型所占字节数对照表一览
2021/05/17 Python