韩顺平 javascript教学视频_学习笔记11_js二维数组_js冒泡排序_二分查找

多维数组——二维数组

多维数组我们只介绍二维数组,一维数组的元素还可以是一个数组,就构成了二维数组。


下面看两个程序即可

  
	  
		  
	  
	  
  

遍历二维数组

  
	  
		  
	  
	  
  

二维数组常常用来表示一个矩阵,矩阵的转置比较常用
矩阵转置就是将矩阵的行和列进行交换

比如,将下面的矩阵转置

2 4 6 8
8 9 0 -1
9 6 2 1 

  
	  
		  
	  
	  
   

运行上面的代码后,发现不能出结果,也就是说代码有错,
主要是由于如果一个二维数组没有初始化,不能直接赋值,如  arr_new[j][i]=arr[i][j];  不能这样直接用

看下面代码

  
	  
		  
	  
	  
   

js基本语法——排序


排序是将一组数据,依指定的顺序进行排列的过程。

排序有很多种,想深入了解的建议看一下数据结构

排序(Sorting)是数据处里中一种很重要的运算,同时也是很常用的运算,一般数据处里工作25%的事件都在进行排序。简单的说,排序就是把一组记录(元素)按照某个域的值的递增(即由小到大)或递减(即由大到小)的次序重新排列的过程。

下面说一下几个比较常用的排序方法

冒泡排序
冒泡排序(Bubble Sorting)的基本思想是:
通过对待排序序列从后向前(从下标较大的元素开始),依次比较相邻元素的排序码,若发现逆序则交换,使排序码较小的元素逐渐从后部移向前部(从下标较大的单元移向下标较小的单元),就像水底下的气泡一样逐渐向上冒。

  
	  
		  
	  
	  
  

优化: 因为排序的过程中,各元素不断接近自己的位置,如果一趟比较下来没有进行过交换,就说明序列有序,因此要在排序过程中设置一个标志flag判断元素是否进行过比较,从而减少不必要的比较。

优化过的代码:

  
	  
		  
	  
	  
  

js基本语法——查找

我们常用的查找有两种
  1. 顺序查找(一个一个的比对)
  2. 二分查找
二分查找是经常在笔试和面试中会遇到的

二分查找的前提:
该数组是有序的,如果不是有序的数组,则不能使用二分查找

  
	  
		  
	  
	  
  

你可能感兴趣的:(Javascript,学习笔记)