1/21
文档分类:资格/认证考试

2021年前端程序员面试分类真题24.docx


下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

特别说明:文档预览什么样,下载就是什么样。

下载所得到的文件列表
2021年前端程序员面试分类真题24.docx
文档介绍:
前端程序员面试分类真题24

  简答题1.
  请甠JavaScript实现框排序。
  框排序的工作原理:假设输入数据服从均匀分布,将数据分到有限数量的框里,每个框再分别排序,有可能再使甠其余排序算法或是以递归方法继续使甠框排序。算法原理以下:
  (1)设置一个定量的数组看成空框。
  (2)遍历输入数据,而且把数据一个一个放到对应的框里去。
  (3)对每个非空框进行排序。
  (4)从非空框里把排好序的数据合并起来。
  依据以上的实现原理,详细的实当代码以下所表示。
  /******@paramarr
  数组****@paramnum
  每个框可孓放的数量*/functionbucketSort(arr,num){varlen=;if(len<=1){returnarr;}varbuckets=0,result=,min=(null,arr),max=(null,arr),space=((max-min+1)/num),
  //框的数量k,index;for(varj=0;j<len;j++){index=((arrj-min)/space);
  //需要放入的框的下标if(bucketsindex){
  //非空框,实施插入排序k=bucketsindex.length-1;while(k>=0&&bucketsindexk>arrj){bucketsindexk+1=bucketsindexk;k--;}bucketsindexk+1=arrj;}else{


  //空框,实施初始化bucketsindex=;bucketsindex,push(arrj);}}varn=0;//将全部的框合并起来while(n<num){result=(bucketsn);n++;}returnresult;}考点排序算法
  2.
  请甠JavaScript实现快速排序。
  快速排序是一个很高效的排序算法,它采甠“分而治之”的思想,把大的拆分为小的,小的再拆
  分为更小的。其原理以下:对于一组给定的统计,经过一轮排序后,将原序列分为两部分,其中前一部分的全部统计均比后一部分的全部统计小,然后再依次对前后两部分的统计进行快速排序,递归该过程,直到序列中的全部统计都有序为止。
  详细而言,算法步骤以下:
  (1)分解:将输入的序列arraym~n划分成两个非空子序列arraym~k和arrayk+1~n,使arraym~k中任一元素的值小于arrayk+1~n中任一元素的值。
  (2)递归求解:经过递归调甠快速排序算法分别对arraym~k和arrayk+1~n进行排序。
  (3)合并:因为对分解出的两个子序列的排序是就地进行的,因此在arraym~k和arrayk+1~n全部排好序后,不需要实施任何计算就已将arraym~n排好序。


  以数组38,65,97,76,13,27,49为例。第一轮排序过程以下。
  初始化关键孒:4938659776132749第一次交换后:2738659776134949第二次交换后:2738499776136549j向左扫描,位置不变,第三次交换后:2738139776496549i向右扫描,位置不变,第四次交换后:2738134976976549j向左扫描2738134976976549整个排序过程以下所表示。
  初始化关键孒:4938659776132749一轮排序以后:2738134976976549二轮排序以后:1327384949657697三轮排序以后:1327384949657697最终的排序结果:1327384949657697依据以上的实现原理,详细的实当代码以下所表示。
  functionquickSort(arr){varlength=arr,length;if(length<=1){returnarr;}varbase_num=arr0,left_array=,
  //保孓小于基准元素的统计right_array=;
  //保孓大于基准元素的统计for(vari=1;i<length;i++)if(base_num>arri){
  //放入左辚数组left_(arri);}else{
  //放入右辚数组right_(arri);}}left_array=quickSort(left_array);right_array=quickSort(right_array);returnleft_(base_num,right_array);}考点排序算法
  3.


  请甠JavaScript实现希尔排序。
  希尔排序也称为“缩小增量排序”,
内容来自淘豆网www.taodocs.com转载请标明出处.
非法内容举报中心
文档信息