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


Posted in Javascript onSeptember 03, 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 相关文章推荐
20款效果非常棒的 jQuery 插件小结分享
Nov 18 Javascript
用JQUERY增删元素的代码
Feb 14 Javascript
getComputedStyle与currentStyle获取样式(style/class)
Mar 19 Javascript
使用struts2+Ajax+jquery验证用户名是否已被注册
Mar 22 Javascript
使用Angular.js实现简单的购物车功能
Nov 21 Javascript
Vue.js原理分析之observer模块详解
Feb 17 Javascript
基于Vuejs和Element的注册插件的编写方法
Jul 03 Javascript
vuejs使用递归组件实现树形目录的方法
Sep 30 Javascript
vue实现样式之间的切换及vue动态样式的实现方法
Dec 19 Javascript
基于vue实现可搜索下拉框定制组件
Mar 26 Javascript
微信小程序wx.uploadfile 本地文件转base64的实现代码
Jun 28 Javascript
详解jQuery设置内容和属性
Apr 11 jQuery
Egret引擎开发指南之编译项目
Sep 03 #Javascript
js和jquery中循环的退出和继续下一个循环
Sep 03 #Javascript
Egret引擎开发指南之创建项目
Sep 03 #Javascript
Mac OS X 系统下安装和部署Egret引擎开发环境
Sep 03 #Javascript
Windows8下搭建Node.js开发环境教程
Sep 03 #Javascript
javascript常见操作汇总
Sep 03 #Javascript
优化Node.js Web应用运行速度的10个技巧
Sep 03 #Javascript
You might like
linux php mysql数据库备份实现代码
2009/03/10 PHP
PHP查询网站的PR值
2013/10/30 PHP
WampServer下安装多个版本的PHP、mysql、apache图文教程
2015/01/07 PHP
php短网址和数字之间相互转换的方法
2015/03/13 PHP
PHP判断一个字符串是否是回文字符串的方法
2015/03/23 PHP
基于PHP后台的Android新闻浏览客户端
2016/05/23 PHP
thinkphp自定义权限管理之名称判断方法
2017/04/01 PHP
PHP实现的数组和XML文件相互转换功能示例
2018/03/15 PHP
PHP PDOStatement::rowCount讲解
2019/02/01 PHP
js如何调用qq互联api实现第三方登录
2014/03/28 Javascript
javascript事件模型实例分析
2015/01/30 Javascript
JS数组搜索之折半搜索实现方法分析
2017/03/27 Javascript
详解使用vue实现tab 切换操作
2017/07/03 Javascript
nodejs模块学习之connect解析
2017/07/05 NodeJs
Mongoose中document与object的区别示例详解
2017/09/18 Javascript
详解使用webpack打包编写一个vue-toast插件
2017/11/08 Javascript
JavaScript实现的拼图算法分析
2019/02/13 Javascript
Vue CLI 3.x 自动部署项目至服务器的方法
2019/04/02 Javascript
解决layui追加或者动态修改的表单元素“没效果”的问题
2019/09/18 Javascript
使用JavaScript和MQTT开发物联网应用示例解析
2020/08/07 Javascript
[38:21]2018DOTA2亚洲邀请赛3月30日 小组赛A组 LGD VS Newbee
2018/03/31 DOTA
Python编程语言的35个与众不同之处(语言特征和使用技巧)
2014/07/07 Python
跟老齐学Python之大话题小函数(1)
2014/10/10 Python
python对html代码进行escape编码的方法
2015/05/04 Python
Python中函数及默认参数的定义与调用操作实例分析
2017/07/25 Python
Python中实现最小二乘法思路及实现代码
2018/01/04 Python
使用pandas read_table读取csv文件的方法
2018/07/04 Python
用Python PIL实现几个简单的图片特效
2019/01/18 Python
一步步教你用python的scrapy编写一个爬虫
2019/04/17 Python
docker-py 用Python调用Docker接口的方法
2019/08/30 Python
Python print不能立即打印的解决方式
2020/02/19 Python
Python基于smtplib模块发送邮件代码实例
2020/05/29 Python
python实现图像高斯金字塔的示例代码
2020/12/11 Python
亿阳信通股份有限公司C#笔试题
2016/12/06 面试题
小城镇建设汇报材料
2014/08/16 职场文书
工作简历的自我评价
2019/05/16 职场文书