<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Document</title>
</head>
<body>
<script>
var mystr = 'asdasdasdwdascxc';
function fis(str){//97
var len = str.length;
var arr = [];
for(var i = 0 ;i < 26 ;i++){
arr[i] = 0;
}
for(var i = 0 ;i < len; i++){
var s = str[i].charCodeAt()-97;
arr[s] ++;
}
for(var i = 0; i < len; i++){
// console.log(str[i]);
if(arr[str[i].charCodeAt()-97] == 1){
// var letter = String.fromCharCode(97 + i);
console.log(str[i]);
return ;
}
}
console.log("No that letter!")
return ;
}
fis(mystr);
</script>
</body>
</html>
2019.4.26刷剑指offer刷到原题
题目描述
在一个字符串(0<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置, 如果没有则返回 -1(需要区分大小写).
function FirstNotRepeatingChar(str)
{
// write code here
let arr = [];
for(let i = 0; i < str.length;i++){
if(arr[str[i]] == undefined){
arr[str[i]] = 1;
}else{
arr[str[i]]++;
}
}
for(let i = 0; i < str.length;i++){
if(arr[str[i]] == 1)
return i;
}
return -1;
}