请选择 进入手机版 | 继续访问电脑版

前馈科技

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 639|回复: 0

C语言求矩阵局部极大值

[复制链接]

97

主题

97

帖子

539

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
539
发表于 2021-11-3 20:07:56 | 显示全部楼层 |阅读模式
给定M行N列的整数矩阵A,如果A的非边界元素A[j]大于相邻的上下左右4个元素,那么就称元素A[j]是矩阵的局部极大值
输入样例1:
4 5
1 1 1 1 1
1 3 9 3 1
1 5 3 5 1
1 1 1 1 1
输出样例1:
9 2 3
5 3 2
5 3 4

  1. #include<stdio.h>

  2. #define M 20
  3. #define N 20
  4. void main()
  5. {
  6.   int i,j,m,n,a[N][M];
  7.   scanf("%d%d",&n,&m);
  8.   for ( i=0;i<n;i++ )
  9.      for ( j=0;j<m;j++ )
  10.          scanf("%d",&a[j]);

  11.   for ( i=1;i<n-1;i++ )
  12.     for ( j=1;j<m-1;j++ )
  13.        if(a[i][j]>a[i-1][j]&&a[i][j]>a[i+1][j]&&a[i][j]>a[i][j-1]&&a[i][j]>a[i][j+1])
  14.            printf("%d %d %d\n",a[i][j],i+1,j+1);
  15. }


复制代码

局部极大值搜索算法见附件:

PeakFinding.pdf

1.93 MB, 下载次数: 0

局部极大值

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|计算机控制

GMT+8, 2024-3-29 22:29 , Processed in 0.054291 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表