#数据结构与算法学习笔记#剑指Offer1.5:二维数组中的查找(C++)
2018-03-23 20:43
771 查看
2018.3.23
JAVA实现之后再学习一下C++写法
本题算法JAVA实现传送门/**
*
* @author ChopinXBP
* 在一个二维数组中,每一行都按照从左到右递增的顺序排序,
* 每一列都按照从上到下递增的顺序排序。请完成一个函数,
* 输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
*
*
*/
#include "stdafx.h"
/*
最佳解法:
利用二维数组由上到下,由左到右递增的规律,
那么选取右上角或者左下角的元素a[row][col]与target进行比较,
当target小于元素a[row][col]时,那么target必定在元素a所在行的左边,即col--;
当target大于元素a[row][col]时,那么target必定在元素a所在列的下边,即row++;
*/
# if 0
class Solution{
public:
bool Find(int target, vector<vector<int>> array){
if (array.empty()) return false; //养成进门判定的好习惯
int _length = array.size();
for (int i = 0; i < _length; i++){
if (array[i].empty())continue; //判定数组空好习惯
else if (target >= array[i][0]){
if(target <= array[i][array[i].size() - 1]){
for (int j = array[i].size()-1 ; j >= 0; j--)
{
if (target == array[i][j])return true;
else if (target > array[i][j])break;
}
}
else{
continue;
}
}
else{
return false;
}
}
return false;
}
};
#endif
JAVA实现之后再学习一下C++写法
本题算法JAVA实现传送门/**
*
* @author ChopinXBP
* 在一个二维数组中,每一行都按照从左到右递增的顺序排序,
* 每一列都按照从上到下递增的顺序排序。请完成一个函数,
* 输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
*
*
*/
#include "stdafx.h"
/*
最佳解法:
利用二维数组由上到下,由左到右递增的规律,
那么选取右上角或者左下角的元素a[row][col]与target进行比较,
当target小于元素a[row][col]时,那么target必定在元素a所在行的左边,即col--;
当target大于元素a[row][col]时,那么target必定在元素a所在列的下边,即row++;
*/
# if 0
class Solution{
public:
bool Find(int target, vector<vector<int>> array){
if (array.empty()) return false; //养成进门判定的好习惯
int _length = array.size();
for (int i = 0; i < _length; i++){
if (array[i].empty())continue; //判定数组空好习惯
else if (target >= array[i][0]){
if(target <= array[i][array[i].size() - 1]){
for (int j = array[i].size()-1 ; j >= 0; j--)
{
if (target == array[i][j])return true;
else if (target > array[i][j])break;
}
}
else{
continue;
}
}
else{
return false;
}
}
return false;
}
};
#endif
相关文章推荐
- #数据结构与算法学习笔记#剑指Offer1:二维数组中的查找(JAVA)
- 剑指offer 2.3 数据结构2-二维数组中的查找
- 剑指offer学习笔记【二维数组的查找】
- 『剑指 offer 学习笔记』「面试题 3:二维数组中的查找」
- 【算法学习笔记】07.数据结构基础 链表 初步练习
- 数据结构与算法学习笔记03(腾讯面试题)
- 【算法学习笔记】09.数据结构基础 二叉树初步练习2
- 数据结构与算法学习笔记04(约瑟夫问题)
- 数据结构与算法学习笔记——quick sort
- C++学习笔记之由文本文件读取数据到vector模板建立的二维数组 并存储为新的文本文件
- 【算法学习笔记】10.数据结构基础 二叉树初步练习3(遍历与递归复习)
- 【算法学习笔记】11.数据结构基础 二叉树初步练习4
- 数据结构与算法C++版(笔记)
- 【算法学习笔记】08.数据结构基础 二叉树初步练习1
- 【算法学习笔记】08.数据结构基础 二叉树初步练习1
- 数据结构与算法学习笔记——算法的时间和空间复杂度
- C++学习笔记2--函数重载 复杂的数据 内存对齐 指针数组 结构与指针 传值传址传引用 联合枚举类型别名
- 【算法学习笔记】06.数据结构基础 队列与堆栈初步
- 【算法学习笔记】07.数据结构基础 链表 初步练习
- 算法题001 剑指Offer 面试题三:二维数组中的查找