二维数组中的查找
来源:互联网 发布:cv source数据库 编辑:程序博客网 时间:2024/06/05 19:34
编程3:在一个二维整数数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数, 输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
解决思路:
从二维数组的右上角的元素开始判断,因为此元素是它所在行的最大数,是它所在的列的最小数。如果它等于要查找的数字,则查找过程结束。如果它大于要查找的数字,则可以排除它所在的列。如果它小于要查找的数字,则可排除它所在的行。这样如果要查找的数字不在数组的右上角,则每次判断都可以排除一行或一列以缩小查找范围,直到找到要查找的数字,或者查找范围为空
private static void suzhu1() { int[][] arr = {{1, 2, 8, 9}, {2, 4, 9, 12}, {4, 7, 10, 13}, {6, 8, 11, 15}}; int target = 7; int rows = arr.length; int columns = arr[0].length; int row = 0; int column = columns - 1; while (row <= rows && column >= 0) { if (target == arr[row][column]) { System.out.println(target + "在第" + row + "行,第" + column + "列"); break; } if (target > arr[row][column]) { row++; if (row>=rows)break; } if (target < arr[row][column]) { column--; } } }
0 0
- 二维数组中的查找
- 二维数组中的查找
- 二维数组中的查找
- 二维数组中的查找
- 二维数组中的查找
- 二维数组中的查找
- 二维数组中的查找
- 二维数组中的查找
- 二维数组中的查找
- 二维数组中的查找
- 二维数组中的查找
- 二维数组中的查找
- 二维数组中的查找
- 二维数组中的查找
- 二维数组中的查找
- 二维数组中的查找
- 二维数组中的查找
- 二维数组中的查找
- linux下的/dev/mem设备认识和使用
- Expected resource of type animator [ResourceType]
- form表单提交的几种方法
- The Happens-Before Relation
- C语言算法例题——a+aa+aaa...求和
- 二维数组中的查找
- ZeroMQ研究与应用分析
- request 里的所有参数及参数名(参数名自动获取)
- [Unity3D——用代码说明一切] 小技巧:单例模式泛型基类
- [普及]NOIP 1999 邮票面值设计
- Android ImageView的setImageLevel和level-list使用
- AndroidStudio Failed to create JVM:error code -4错误
- Linux 之 FTP服务实战应用进阶
- java自学之路2