杨氏矩阵详解-C语言

本文介绍了杨氏矩阵的概念,其特点是每行每列都递增,且右上角的值是所在行最大、列最小。通过这个规律,可以高效地进行特定值的搜索。文章还提到可以以右上角或左下角的值为定点,优化搜索过程,并提供了C语言的代码实现。
摘要由CSDN通过智能技术生成

首先我们了解下什么是杨氏矩阵

杨氏矩阵

——> 每一行从左到右是递增,从上到下是递增
这样的矩阵有一个规律如下图:
在这里插入图片描述
例如我们有一个3×3的矩阵,可以发现右上角的值是那一行最大的,又是那一列最小的,发现这个规律,我们就**可以每一次以右

上角的值为一个定点**,去比较你要找的值(比如找7),如果比找的值小,那么这一行便可以去掉不用再比较
在这里插入图片描述
同理如果找的是1,那么3的那一列便可以去掉;
在这里插入图片描述
当然我们也可以以左下角为定点,同样的道理:
下面由代码实现:

int Find_Num(int arr[3][3], int k, int* pr, int* pc)
{
   
	int x =
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值