找回密码
 注册
关于网站域名变更的通知
查看: 1513|回复: 8
打印 上一主题 下一主题

怎样用MATLAB找出一些最小值,并返回他们在原矩阵中的位置?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-5-7 10:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
怎样用MATLAB找出一些最小值,并返回他们在原矩阵中的位置?+ _; |' o" V, Q- a& d) Y

该用户从未签到

推荐
发表于 2020-5-7 13:32 | 只看该作者
>> a=magic(5)- k% Y: n; q$ b+ k! }
' Y: c" I0 b" j. k- b
a =
0 j1 t0 _, C+ M% u0 v5 l1 ?: h# B
% i  V4 L% Q4 H) ^. ?    17    24     1     8    15, a( J: s* C7 y1 I
    23     5     7    14    16
! k8 ^; U7 B8 x4 A) U2 S3 x     4     6    13    20    22
2 D# }6 v* c% q+ L9 g1 ~1 |) ]4 ^    10    12    19    21     3# D" ]* e* b  S
    11    18    25     2     9
8 M: U; [. S, _0 t9 f2 D+ Z' \; {! a. P+ @
>> min(min(a))
9 C. d3 n0 Z7 U2 S6 s! Z, R; q+ c8 S) \7 D  j8 A' k7 y
ans =
& k+ q$ F5 U) O/ I+ c. u3 C! K3 o& I  N! S; A# j
     1
  v6 a8 M9 n9 o+ J& G最小值
3 Y, [1 f% }4 n>> [x,y]= find(a==min(min(a)))/ Q# l5 [; h$ O* L" m+ j: g: \

9 w9 n9 Q: L6 j% mx =
* j% ~7 g3 C  X5 n9 r0 _0 J1 Q9 d- K. g  m( B2 N2 a9 [. ~7 X+ Q
     1
* h7 a$ R! N3 O
3 ?& I/ \, p$ u4 j! N* ^+ h4 B0 Z. V  ?# R- X
y =- o1 m* B6 K$ K2 D- L4 q
, H2 H  A; e" V) Z2 w- @
     3* s6 B" b5 Y1 r0 k% O, R' s2 L8 k2 r
最小值的位置 是1行3列 也就是最小值1的位置
7 f# b' {8 W3 m; q# C6 Z" `4 s6 H) U0 F! e9 T
>> sort(a(: ))
9 s% K0 [: `* I2 R- D5 P
  g4 u* R7 q  w& W  Fans =7 }/ i) O# t7 |; ?
3 V5 `. F* H9 G/ |8 p. _: y
     15 p/ y+ @$ j( g4 I5 j3 _
     2
! Z( e0 K7 L5 T  q. W, }2 N     3
6 F! X# ~( u5 ^) ?; Y% \     4( e# i1 C' e- X7 e6 U
     5) X2 Y6 y- }, w4 }; m! P1 o
     6" O8 E7 I" ^; s% z6 J2 T' b
     7
- d, u# X6 ]# {9 D9 A# q- i     87 C8 D" _2 E& ?( _" o3 F
     9
0 j6 R$ D  f3 T( t  J1 g. d5 v3 v    103 K" x4 f1 D) G5 y7 c' [
    11" W3 i3 ^( Y. K5 x
    12# K: t7 G' o0 B2 _
    13
6 t7 U3 O, Q2 `8 B6 n! D  ^4 m    14
- c4 T% z/ M# K" @( t4 j1 b    15
) b- X# b9 l) Y    16  S$ s! v& K  a' w! Q) k" u9 d
    17( `! [& V9 `0 z6 n9 Z# q$ v
    18
( M; Y) D1 [8 ?1 I    19
( |) u( V% J# T1 W3 `7 c    20; v/ R" ~5 Y# {5 ?
    212 w: x7 [( Y- K  @
    22
0 l$ u% I8 z7 G. k+ T5 a( h; ?+ i    239 L) ^' `/ z+ E2 N3 _* J+ ^
    24
4 C2 O' M; O- I  G# d    25+ E% [( S  s/ A$ h7 [
升序排列
9 ~& z  E8 Y% b+ \7 b) y7 J>> b(1:5)
( w3 P4 z* n4 K5 r( I' H- O+ ]6 b5 R" ^0 \' {% d6 q
ans =
" Y7 a8 b# }" V1 e& g: C
+ D$ I5 `: ], {- O: N     1, ^& L; e4 k* N& y. K
     2  |6 t" Q5 z5 [, k
     3  d8 Y! O9 t: f: z5 U5 G
     45 ?8 ?+ k  k7 W* X; {
     5$ D) U2 @& m  A
最小的5个值 你可以任意设定一些最小值) D9 k4 ~7 }  r/ K
>> for i=1:53 e2 d1 ^8 p, v" m) f8 y2 u
[x,y]=find(a==b(i))
9 @$ l2 u$ M; K$ \6 aend
: [2 a9 r' M% r% c" m1 B! l, C2 D! D8 C
x =
  |3 M: f( z0 w' A) J
3 X* h7 I% A3 }( m' O% _     1* Y  }3 @. l' C8 m* ~& V( F
4 a* G0 J0 C! V1 \4 C  c

' N* x: Q1 i- n* l! S, y& D# B+ Oy =
7 S0 v' r* `# v' ~" l' O" R; _4 l$ c* @- T  S( A
     3
3 F: v; N; R) P' }. M, n; J
/ f5 L1 Q2 D! O
8 R! ]) o+ d9 R# l$ m4 c. fx =
" M; o" s  Q8 s( J2 W7 Q
1 @! n4 O. D; G; T1 i0 L, m     5- g9 P0 I4 Y1 V3 c
% Z+ w2 |* l* c3 U  O- j

0 i' q5 i! P+ _( g9 My =, q9 U- t" V' c! T
3 R; |+ V. ^0 e+ a$ x2 K2 ]8 V
     42 x( ~' Y4 c9 f2 D
; g/ L5 [. `, y: P) _. ^  D

) K: `+ @1 e. e% f' [/ Fx =
! _8 w5 c1 q7 a# B: x  L8 j
: }& e5 p, ?" r6 |0 z& ~     4
7 C. U  f" U- v" L" W  y7 q  l
* T6 _. \7 z& P: }( b5 [/ m6 X! _/ J9 L) z7 r) `; f
y =8 m% Y$ V! G0 ?- E  ~% ~0 {4 m
( j9 `0 T( v' ~- D7 L: z8 t$ o+ g
     54 |2 P" s/ f2 L

7 D" O  |; J' V* c
. E8 v5 t* i! cx =0 k4 w4 c6 j. ^% k" N; s) y: B

( m) J- f. p$ ~; n' m     3
' t  E( n' N$ F+ d5 d0 E4 @6 Q, K3 P- F' [! R

; K) |# g9 H, \y =( I( Z/ k6 p+ B) z

' e6 x" L% K8 x, [     1
, e9 ]! T8 X5 T( G8 m$ g/ Q( R5 o: s  B) v0 {, [7 X  Z& t* c

% |& }$ n0 e6 U6 `x =
% ^& t0 I* z8 ]1 i$ r% b$ [6 x  W; X
     2
* z8 _; |" T( v+ d% F! K$ R
( W* H: S1 d: M( ?* b! |: W- Z: l' M4 h
y =  }2 s0 |% ]& v) s7 }: O

( c( u3 Y6 x0 V  [- c) K     2
: x4 i/ H8 G4 X: M; s; ~5个最小值的位置6 H& v- b: M2 z2 U/ ~) I" q

点评

太详细了,厉害啊  详情 回复 发表于 2020-5-8 13:26
  • TA的每日心情

    2019-11-29 15:37
  • 签到天数: 1 天

    [LV.1]初来乍到

    3#
    发表于 2020-5-7 13:52 | 只看该作者
    楼上正解!% K/ D! c! r0 S4 h9 |
    如果不熟悉build-in函数,自己编程也未尝不可。

    该用户从未签到

    4#
    发表于 2020-5-7 13:53 | 只看该作者
    可以Help一下

    该用户从未签到

    5#
    发表于 2020-5-7 17:08 | 只看该作者
    min函数本身即可以返回位置信息,不用这么麻烦的呢。4 w# s6 M& ~( s$ E) K2 M2 [

    ( x0 S5 {- _5 U3 I' N- |[minx, ind] = min(x);
    , _7 P; F8 L. n3 Y* p( j$ `6 p
    / g; T, ]. A# N* \. q+ wind就是找到的最小值的位置。

    该用户从未签到

    6#
    发表于 2020-5-7 17:09 | 只看该作者
    本帖最后由 mengtaiqi 于 2020-5-7 17:11 编辑
    , z' v& b0 I. q+ B
      T% B; m: n1 Q" n7 l* m4 `>> a=magic(8);2 }$ a9 x4 @4 r- e8 i# r) `8 z
    tic# y; a3 h3 ]9 R' W7 N0 Y
    find(max(max(a))==a)
    2 O2 U# D3 y& C! I% Xtoc* B% b( T) l: k: s$ j% b% }
    1 T0 ^: ?( n3 N6 F; ^4 \& t
    tic7 a) m- l2 U! K9 ^3 M5 v( w
    [maxa, ind] = max(a(: )). j. Q9 ^. M7 g6 j' f' _0 A) _
    toc
    * Z2 ~, X+ n6 k
    & H0 Y* j2 u& j  `" ?$ a- Eans =
    0 D1 R1 m; Q! w1 c0 z$ u. y2 I- g2 g
         1: Y+ {% k# X1 w  G) y0 x3 m
    6 m2 g' P1 ~* C: Q6 U
    Elapsed time is 0.012841 seconds.8 N. F( y3 i9 Y  g" |

    & Q6 [0 p! i2 \# Z6 Hmaxa =. Q: c" t  Q8 A1 e. N; U/ f' C. b$ ?

    5 w0 Y3 z+ s  u$ t9 y    64
    $ o7 c& S9 S, S! e5 D9 W
    : A0 c* y/ {7 x2 ]6 P" U% y- V# O1 l0 d4 G9 x8 b* {( h: G/ g* Y
    ind =
    + @3 b, ^5 I2 F) T! e* O' a% u3 ?) Z1 x! ~/ j1 P: }% L
         1& C* l1 W( \  Z
    . w1 O9 o& ?7 `- [/ A- y% V
    Elapsed time is 0.004498 seconds.
    * H: m2 e; O+ p* h& a8 W) y/ G& s% G$ T
    区别还是很明显的,max和min函数提供了很好的使用方式为何不使用呢?不需要借助于find函数了。find函数的效率比起来关系表达式也是慢了很多的。

    该用户从未签到

    7#
    发表于 2020-5-8 13:26 | 只看该作者
    CCxiaom 发表于 2020-5-7 13:32: W; W$ r% T* m2 G
    >> a=magic(5)5 U# W  M' J* w+ |/ E
    ' k4 U6 Q1 [: a( Q' E( v$ G: b
    a =
    - d5 }! `$ ?5 y* f1 f4 S! c
    太详细了,厉害啊
    % c* s' }. ?, J6 m
    9 m0 j( q, W2 Y7 E

    该用户从未签到

    8#
    发表于 2020-5-8 14:19 | 只看该作者
    太详细了,厉害啊

    该用户从未签到

    9#
    发表于 2020-5-9 14:45 | 只看该作者
    大神遗失民间啊
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-11-24 11:37 , Processed in 0.156250 second(s), 25 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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