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 相关文章推荐
jquery利用event.which方法获取键盘输入值的代码
Oct 09 Javascript
JavaScript去除空格的三种方法(正则/传参函数/trim)
Feb 06 Javascript
Javascript Throttle &amp; Debounce应用介绍
Mar 19 Javascript
一款基于jQuery的图片场景标注提示弹窗特效
Jan 05 Javascript
浅谈js中变量初始化
Feb 03 Javascript
javascript属性访问表达式用法分析
Apr 25 Javascript
jquery.validate提示错误信息位置方法
Jan 22 Javascript
实例讲解使用原生JavaScript处理AJAX请求的方法
May 10 Javascript
使用get方式提交表单在地址栏里面不显示提交信息
Feb 21 Javascript
在vue+element ui框架里实现lodash的debounce防抖
Nov 13 Javascript
JavaScript 正则应用详解【模式、欲查、反向引用等】
May 13 Javascript
OpenLayers加载缩放控件使用方法详解
Sep 25 Javascript
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
PHP SPL标准库之文件操作(SplFileInfo和SplFileObject)实例
2015/05/11 PHP
一个完整的PHP类包含的七种语法说明
2015/06/04 PHP
php时间计算相关问题小结
2016/05/09 PHP
Laravel获取当前请求的控制器和方法以及中间件的例子
2019/10/11 PHP
jquery.tmpl JQuery模板插件
2011/10/10 Javascript
正负小数点后两位浮点数实现原理及代码
2013/09/06 Javascript
javascript完美拖拽的实现方法
2013/09/29 Javascript
几种设置表单元素中文本输入框不可编辑的方法总结
2013/11/25 Javascript
extjs 时间范围选择自动判断的实现代码
2014/06/24 Javascript
javascript控制台详解
2015/06/25 Javascript
java中String类型变量的赋值问题介绍
2016/03/23 Javascript
JS获取地址栏参数的两种方法(简单实用)
2016/06/14 Javascript
js实现淡入淡出轮播切换功能
2017/01/13 Javascript
Angular 2父子组件数据传递之@ViewChild获取子组件详解
2017/07/04 Javascript
vue通过watch对input做字数限定的方法
2017/07/13 Javascript
react-router4 嵌套路由的使用方法
2017/07/24 Javascript
vue中$refs, $emit, $on, $once, $off的使用详解
2019/05/26 Javascript
Moment.js实现多个同时倒计时
2019/08/26 Javascript
详解Python实现按任意键继续/退出的功能
2016/08/19 Python
详解Python如何生成词云的方法
2018/06/01 Python
PyTorch的深度学习入门之PyTorch安装和配置
2019/06/27 Python
Django stark组件使用及原理详解
2019/08/22 Python
解决import tensorflow as tf 出错的原因
2020/04/16 Python
德国古洛迷亚百货官网:GALERIA Kaufhof
2017/06/20 全球购物
应届生学校辅导员求职信
2013/11/07 职场文书
如何填写个人简历自我评价
2013/12/10 职场文书
产品促销活动策划书
2014/01/15 职场文书
毕业证丢失证明
2014/01/15 职场文书
商场活动策划方案
2014/01/24 职场文书
查摆剖析材料范文
2014/09/30 职场文书
学校领导班子成员查摆问题及整改措施
2014/10/28 职场文书
优秀学生干部事迹材料
2014/12/24 职场文书
关于golang高并发的实现与注意事项说明
2021/05/08 Golang
详解pytorch创建tensor函数
2022/03/22 Python
Python多线程实用方法以及共享变量资源竞争问题
2022/04/12 Python
MySQL使用IF语句及用case语句对条件并结果进行判断 
2022/09/23 MySQL