当前位置: 首页 > wzjs >正文

网站开发功能需求表网站设计的流程

网站开发功能需求表,网站设计的流程,建设网站建设的目标,深圳建站网站模板你整理的这些前端常见算法知识点挺实用的,适合复习或面试准备。下面我帮你稍微整理美化一下格式,并补充一点细节,让内容更清晰易读: 1. 排序算法 冒泡排序(Bubble Sort) 原理:通过重复比较相邻元…

你整理的这些前端常见算法知识点挺实用的,适合复习或面试准备。下面我帮你稍微整理美化一下格式,并补充一点细节,让内容更清晰易读:


1. 排序算法

  • 冒泡排序(Bubble Sort)
    原理:通过重复比较相邻元素并交换位置,将最大(或最小)的元素逐步“冒泡”到数组的末尾。
    时间复杂度:平均和最坏为 O(n²),最好情况(已经有序)为 O(n)。

    function bubbleSort(arr) {for (let i = 0; i < arr.length - 1; i++) {for (let j = 0; j < arr.length - 1 - i; j++) {if (arr[j] > arr[j + 1]) {[arr[j], arr[j + 1]] = [arr[j + 1], arr[j]];}}}return arr;
    }
    
  • 快速排序(Quick Sort)
    原理:选择一个基准元素(pivot),将数组分成小于和大于基准的两部分,递归排序。
    时间复杂度:平均 O(n log n),最坏 O(n²)。

    function quickSort(arr) {if (arr.length <= 1) return arr;const pivot = arr[0];const left = arr.slice(1).filter(item => item < pivot);const right = arr.slice(1).filter(item => item >= pivot);return [...quickSort(left), pivot, ...quickSort(right)];
    }
    

2. 搜索算法

  • 线性搜索(Linear Search)
    原理:从头开始逐个比较,直到找到目标或遍历结束。
    时间复杂度:O(n)

    function linearSearch(arr, target) {for (let i = 0; i < arr.length; i++) {if (arr[i] === target) return i;}return -1;
    }
    
  • 二分搜索(Binary Search)(适用于有序数组)
    原理:每次将数组一分为二,根据中间值判断目标在左侧还是右侧,缩小范围。
    时间复杂度:O(log n)

    function binarySearch(arr, target) {let left = 0, right = arr.length - 1;while (left <= right) {const mid = Math.floor((left + right) / 2);if (arr[mid] === target) return mid;else if (arr[mid] < target) left = mid + 1;else right = mid - 1;}return -1;
    }
    

3. 字符串算法

  • 字符串匹配(BF、KMP)

    • BF(Brute Force,暴力匹配):从主串每一个位置开始匹配模式串。时间复杂度 O(mn)。

    • KMP(Knuth-Morris-Pratt)算法:通过前缀表避免重复比较,提高效率。时间复杂度 O(n + m)。

    这里以暴力匹配为例:

    function bruteForceMatch(str, pattern) {for (let i = 0; i <= str.length - pattern.length; i++) {let j = 0;while (j < pattern.length && str[i + j] === pattern[j]) {j++;}if (j === pattern.length) return i;}return -1;
    }
    
  • 字符串反转
    原理:可以使用循环或内置方法来反转字符串。

    • 方法1:循环方式

      function reverseString(str) {let reversed = '';for (let i = str.length - 1; i >= 0; i--) {reversed += str[i];}return reversed;
      }
      
    • 方法2:内置方法

      const reverseString = str => str.split('').reverse().join('');
      

http://www.dtcms.com/wzjs/247581.html

相关文章:

  • wifiu盘做网站揭阳百度快照优化排名
  • web开发就是做网站吗百度有免费推广广告
  • 网站建设好与管理在哪就业可以下载新闻视频的网站
  • b站镜像网站是谁做的百度投诉电话客服24小时
  • wordpress迁站百度关键词优化工具
  • 电商网站前端开发seo搜索引擎优化关键词
  • 蓟州农家院如何做网站开通网站需要多少钱
  • 我的世界怎么自己做皮肤并上传网站动态网站的制作与设计
  • html5和ria网站设计郑州seo技术顾问
  • 公司注册网上核名时总是提示录入字号品牌词优化
  • 自己怎做网站网店seo名词解释
  • 广州有哪些做网站的公司网络营销经典案例
  • 怎么样免费给网站做优化seo怎么发外链的
  • 论文网站开发代运营公司排名
  • 如何建设正规彩票网站宣传渠道和宣传方式有哪些
  • 正规网站建设费用seo行业岗位
  • 湛江专业做网站关键词挖掘工具爱站网
  • 邯郸网站制作经典软文广告
  • 做民宿要给网站多少合同钱百度一下搜索
  • 编写软件的步骤班级优化大师网页版
  • 用什么程序做网站好seo推广怎么样
  • 餐饮系统的网站应该怎么做百度一下马上知道
  • 网购网站后台管理系统图片宁波seo网络推广咨询价格
  • 垂直网站 开源码seo优化案例
  • 专业建设网站应该怎么做成都全网营销推广
  • 海南住房城乡建设网站seo推广收费标准
  • 济宁政府网站建设河北seo推广公司
  • 宜春网站建设哪家专业深圳seo网络推广
  • 网站上滚动海报怎么做的今日头条新闻
  • 涂料网站设计广东疫情动态人民日报