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 相关文章推荐
获得Javascript对象属性个数的示例代码
Nov 21 Javascript
JavaScript中的操作符==与===介绍
Dec 31 Javascript
原生JS实现LOADING效果
Mar 16 Javascript
JS实现的新浪微博大厅文字内容滚动效果代码
Nov 05 Javascript
vue.js学习笔记之绑定style样式和class列表
Oct 31 Javascript
JavaScript实现类似淘宝的购物车效果
Mar 16 Javascript
关于使用axios的一些心得技巧分享
Jul 02 Javascript
从0到1构建vueSSR项目之路由的构建
Mar 07 Javascript
解决Layui数据表格的宽高问题
Sep 28 Javascript
TypeScript高级用法的知识点汇总
Dec 17 Javascript
vue如何在用户要关闭当前网页时弹出提示的实现
May 31 Javascript
JS遍历树层级关系实现原理解析
Aug 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编写PDF文档生成器
2006/10/09 PHP
php获取本地图片文件并生成xml文件输出具体思路
2013/04/27 PHP
Zend的Registry机制的使用说明
2013/05/02 PHP
thinkphp autoload 命名空间自定义 namespace
2015/07/17 PHP
关于ThinkPHP中的异常处理详解
2018/05/11 PHP
jQuery autocomplate 自扩展插件、自动完成示例代码
2011/03/28 Javascript
Query中click(),bind(),live(),delegate()的区别
2013/11/19 Javascript
JavaScript模块规范之AMD规范和CMD规范
2015/10/27 Javascript
node模块机制与异步处理详解
2016/03/13 Javascript
jQuery:unbind方法的使用详解
2017/08/14 jQuery
bmob js-sdk 在vue中的使用教程
2018/01/21 Javascript
使用Ajax和Jquery配合数据库实现下拉框的二级联动的示例
2018/01/25 jQuery
微信小程序中时间戳和日期的相互转换问题
2018/07/09 Javascript
AngularJs1.x自定义指令独立作用域的函数传入参数方法
2018/10/09 Javascript
vue 实现单选框设置默认选中值
2019/11/07 Javascript
js 对象使用的小技巧实例分析
2019/11/08 Javascript
python实现教务管理系统
2018/03/12 Python
pandas带有重复索引操作方法
2018/06/08 Python
Python 按字典dict的键排序,并取出相应的键值放于list中的实例
2019/02/12 Python
pandas修改DataFrame列名的实现方法
2019/02/22 Python
详解程序意外中断自动重启shell脚本(以Python为例)
2019/07/26 Python
在matplotlib中改变figure的布局和大小实例
2020/04/23 Python
python dict乱码如何解决
2020/06/07 Python
Python爬虫实现selenium处理iframe作用域问题
2021/01/27 Python
美国购买和销售礼品卡平台:Raise
2017/01/13 全球购物
LEGO玩具英国官方商店:LEGO Shop GB
2018/03/27 全球购物
Janie and Jack美国官网:GAP旗下的高档童装品牌
2019/09/09 全球购物
中学教师培训制度
2014/01/31 职场文书
党课培训主持词
2014/04/01 职场文书
雷锋式好少年事迹材料
2014/08/17 职场文书
纪念九一八爱国演讲稿600字
2014/09/14 职场文书
班主任高考寄语
2015/02/26 职场文书
导游词之蓬莱长岛
2019/12/17 职场文书
python中os.path.join()函数实例用法
2021/05/26 Python
Win11快速关闭所有广告推荐
2022/04/19 数码科技
python缺失值填充方法示例代码
2022/12/24 Python