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

德州鑫新液压科技有限公司 2026/09/09 17:52:11

今日整理的简单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"))
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

濮阳网站建设南京网站建设公司

FSDP分区策略:如何平衡通信开销与显存节省在当前大模型参数规模动辄上百亿、千亿的背景下,单张GPU的显存早已无法承载完整模型副本。即便是A100 80GB这样的高端卡&#

2026/06/30 13:41:06

大连网站建设牡丹江网站建设

想要探索材料科学的奥秘,揭开电子世界的神秘面纱吗?Quantum ESPRESSO作为一款功能强大的开源电子结构计算软件,为研究人员提供了从基础理论到高级计算

2026/06/30 10:54:22

免费网站建设如何建设网站

Animeko:跨平台智能动漫播放器的5大核心优势解析【免费下载链接】animation-garden动漫花园多平台应用程序,使用 Compose Multiplatfor

2026/06/30 10:46:22

绍兴网站建设济南网站建设公司

在机器视觉系统成像过程中,光源起着重要作用,合适的光源方案可以极大降低图像处理算法的复杂度,提高系统的稳定性、精度和速度。近年来,各领域利用高光

2026/06/30 13:12:04

珠海网站建设四川网站建设

Silverlight动画:缓动函数与透视变换详解1. 动画缓动函数概述在动画制作中,使用样条定义关键帧虽只需四个数字,看似简单,但要通过贝塞尔样条实现特定效果并非易事。这时,动画缓动函数就派上用场了

2026/06/30 13:34:06

房产网站建设福田网站建设

从零开始掌握Artisan:咖啡烘焙师的终极可视化工具指南【免费下载链接】artisanartisan: visual scope for coffee roasters项目地址: ht

2026/06/30 11:59:58

免费网站建设免费企业网站建设

开发是我不想重复的路早几年都流行学计算机,传言就业薪资高,就选了软件开发专业。在学校也不算混子吧,该学的java、python、前端操作系统都学了࿰

2026/06/30 12:06:29

潍坊网站建设六安网站建设

音乐文件解密终极指南:3种方法轻松解锁各大平台加密音频【免费下载链接】unlock-music在浏览器中解锁加密的音乐文件。原仓库: 1. https://github.c

2026/06/30 14:14:10

网站建设步骤网站建设软件

Auto.js微信跳一跳辅助工具终极指南:安卓自动化脚本完整教程【免费下载链接】Auto.js微信跳一跳辅助说明分享Auto.js微信跳一跳辅助说明项目地址: https://gitco

2026/06/30 14:17:09