https://blog.csdn.net/liubinzi123/article/details/8237005
按照这个的话 3 3 1
4 2 6
7 1 9
鞍点会是3,但是鞍点不应该是同行最大值么?两个都是3的话,也是鞍点?也就是说怎么排除掉相等的情况啊,其实再举例一下,情况貌似好复杂唉
思路:遍历矩阵的每一行,找出最大值,在最大值对应的列找最小值,然后判断最大值和最小值的位置是否相等。具体代码如下:
你可以看看最大的周围四个数有没有相等的,有相等的你可以认为不是鞍点。
你给的链接的程序有严重的问题,你看下面两个输入,原则上矩阵相似的,如果说一个有鞍点,另一个也应该认为有鞍点。
请输入数组元素:而如果这样输入
请输入数组元素:那能否帮完善呢?还有楼下那位说的最大定义对么?还是离散数学那个对?
追答这个程序本身很简单,关键要看你想怎么定义鞍点。
从数学上来说应该是区域极大和极小。
最大好像是所有的都比他小,极大才是没有比他大,离散数学这么定义的
追答那是你的理解。没有比它更大的,它不就是最大的吗?至于有多个最大的那无关紧要,因为并没有要求“唯一”最大的。
追问原来如此啊,怪不得我总觉得老师有问题。。。原来是我强行弄唯一了
原来如此啊,怪不得我总觉得老师有问题。。。原来是我强行弄唯一了