📌  相关文章
📜  电影中的美好时光 javascript 中的hackerrank 解决方案(1)

📅  最后修改于: 2023-12-03 15:40:57.604000             🧑  作者: Mango

电影中的美好时光 JavaScript 中的 HackerRank 解决方案

简介

《电影中的美好时光》是一部讲述中国改革开放时期的电影,讲述的是90年代初期,一个外向的少年与一对夫妇相遇,引发了他对爱情、友情、生活和成长的思考。在电影中,男主角开始学习编程,并参加了一系列的编程比赛,在比赛中展现了自己的才华。

本篇文章主要介绍在 HackerRank 平台中出现的与电影中的美好时光相关的 JavaScript 题目,并提供解决方案。

JavaScript 解题方法

题目描述:

在一个字符串中,返回第一个不重复的元素

输入:

一个字符串,例如:"hackerrank"

输出:

第一个不重复的字符,如果没有,输出 "-1"。

解法:

使用 Map(哈希表)解决该问题。首先将字符串中每个字母出现的次数记录下来,然后再从左到右查找第一个出现次数为 1 的字符即可。

function firstNonRepeatingCharacter(s) {
  let map = {};
  
  for (let i = 0; i < s.length; i++) {
    let char = s.charAt(i);
    if (map[char]) {
      map[char]++;
    } else {
      map[char] = 1;
    }
  }
  
  for (let i = 0; i < s.length; i++) {
    let char = s.charAt(i);
    if (map[char] === 1) {
      return char;
    }
  }
  
  return "-1";
}

使用 ES6 Map

function firstNonRepeatingCharacter(s) {
  let map = new Map();
  
  for (let i = 0; i < s.length; i++) {
    let char = s.charAt(i);
    if (map.has(char)) {
      map.set(char, map.get(char) + 1);
    } else {
      map.set(char, 1);
    }
  }
  
  for (let i = 0; i < s.length; i++) {
    let char = s.charAt(i);
    if (map.get(char) === 1) {
      return char;
    }
  }
  
  return "-1";
}
结语

通过学习电影中的美好时光,我们可以感受到编程对男主角成长的重要性。在现今的社会中,编程已经越来越成为必需的技能,希望本篇文章能够帮助读者解决一些编程问题,并提高编程能力。