顺德网站建设网站建设 深圳

高斯机电工程设计(广东)有限公司 2026/09/09 20:34:16

今日整理的简单6个题目,JavaScript算法题目,作为日常算法练手用。

1、求2数之和

从给定数组之中寻找和为目标数字的指定位置

// 求2数之和 const sumTwo = (arr, target) => { for (let i = 0; i < arr.length; i++) { for (let j = i + 1; j <= arr.length; j++) { if (arr[i] + arr[j] === target) { return [i, j] } } } return [] } console.log('sumTwo', sumTwo([1, 3, 5, 8], 8)) const sumTwo2 = (arr, target) => { const map = new Map() for (let i = 0; i < arr.length; i++) { const complement = target - arr[i] if (map.has(complement)) { return [map.get(complement), i] } map.set(arr[i], i) } return [] } console.log('sumTwo2', sumTwo2([1, 3, 5, 8], 9))

2、替换空格

替换空格: 实现一个函数,将一个字符串中的空格替换成“%20”或者指定字符

const replaceStr = (str,text = '%20') => { return str.split(' ').join(text) } console.log('replaceStr', replaceStr('hello world, a good nice day')) const replaceStr2 = (str) => { let newStr = '' for (let item of str) { if (item == ' ') { newStr += text } else { newStr += item } } return newStr }

3、斐波那契数列

实现类似累加功能,不大于50

// 斐波那契数列 function fbnq (n) { if (n <= 1) { return 1 } return fbnq(n - 1) + fbnq(n - 2) } //推荐方式 function fbnq2(n) { if (n <= 1) return n let a = 0, b = 1 for (let i = 2; i <= n; i++) { [a, b] = [b, a + b] // ES6解构赋值 } return b } console.log(fbnq2(10)) // 55

4、返回数字

返回给定字符串内的数字,非数字返回0

// 返回数字 function getNumber (str) { let newStr = '' for (let item of str) { if (Number(item)) { newStr += item } else { newStr += '0' } } return newStr } console.log('getNumber', getNumber('+2147#48^3647'));

5、返回重复的字母次数

// 返回重复的字母次数 function getRepeat (str) { let map = new Map() for (let item of str) { if (!map.has(item)) { map.set(item, 1) } else { map.set(item, map.get(item) + 1) } } return map } console.log('getRepeat', getRepeat('afdfadfdfdfdfdqqqqqqqqqqqqqq'));

6、返回最长单词

// 返回最长单词 function findLongestWord (str) { const words = str.replace(/[^ws]/g, '').split(/s+/) let longestWord = '' let maxLength = 0 for (let word of words) { if (word.length > maxLength) { maxLength = word.length longestWord = word } } return { longestWord, length: maxLength } } console.log(findLongestWord("JavaScript and TypeScript are great"))
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

门户网站建设珠海网站建设

第一章:Open-AutoGLM暴力破解防护的演进与挑战随着自动化语言模型在企业级应用中的广泛部署,Open-AutoGLM 类系统面临日益严峻的安全威胁,其

2026/06/30 11:17:24

张家界网站建设松原网站建设

从零开始画一块能用的双层板:一个音频放大器的PCB实战笔记你有没有过这样的经历?原理图画得挺顺,仿真波形也漂亮,结果一打样回来,电

2026/06/30 13:46:37

青岛网站建设南京网站建设

快速体验打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容:创建一个React应用,使用Zustand进行状态管理。需要实

2026/06/30 12:02:28

西宁网站建设寿光网站建设

网络隐私保护与电子邮件使用全攻略1. 保护浏览隐私在使用浏览器的过程中,各种数据会被记录下来,这可能会对我们的隐私造成威胁。为了保护隐私,我们可以通过删除浏览历史来清除这些数据。以下是不同浏览器删除浏

2026/06/30 12:48:33

深圳营销型网站建设黄浦网站建设

今天早上,刚到公司打开电脑,就收到了一位网友的微信好友申请,对方私聊表示想了解一下关于在线编辑器增强功能的技术和方案。其实,我的微信号早就公开在

2026/06/30 11:50:58

行业网站建设常德网站建设

家庭网络服务统一入口:Lucky网关配置全解析【免费下载链接】lucky软硬路由公网神器,ipv6/ipv4 端口转发,反向代理,DDNS,WOL,ipv4 stun内网穿透,cron,

2026/06/30 11:06:23

商业网站建设连云港网站建设

HuggingFace Dataset库加载公开数据集用于Anything-LLM测试在构建智能问答系统时,一个常见的挑战是:如何在没有真实业务数据的情况下快速验证系统的检

2026/06/30 12:44:02

龙岗网站建设网站建设软件

Arduino IDE 2.0嵌入式开发工具终极指南:快速掌握免费编程利器【免费下载链接】arduino-ideArduino IDE 2.x项目地址: https://gitcode.

2026/06/30 10:34:20

牡丹江网站建设九江网站建设

GLM-Edge-V-2B作为一款专为边缘设备优化的20亿参数图文多模态模型,标志着AI交互能力向终端设备的进一步下沉,让手机、嵌入式设备等边缘硬件也能流畅实现图文理解与对

2026/06/30 11:07:24

贵州省建设厅网站网站建设信息

在数据库的世界里,索引就像是一本书的目录,它能帮助我们快速定位到所需的数据,大大提高数据库的查询效率。在这一小节中,我们将深入探讨数据库索引的原

2026/06/30 13:50:37