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

插入排序

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
插入排序
8 Z- c0 w1 f: J' ~$ ^
4 P$ a4 y, F2 w  G% \
序:( U/ ~" J( x$ }. ~% P- ^" \- O
    遇到难题,陆陆续续耗费一年精力,将成功之际,突然发现建模和求解思路不够灵活,用错了算法,而换了思路和算法,几天就做好了。本次事件令我深受打击,究其原因:: ?) X% p- y7 i" [( h% Z
1.自己算法根基不牢,各种算法知识零碎,虽有对自己所接触到的算法有自己的理解,但从根本上未形成一套算法体系;
2 B; n- t5 I" f( m: m2.书本上的建模是作者的成果展示,读者不能体会到中间过程的艰难;实际问题往往非常复杂,建立数学模型很困难,自己基本上无实战经验;
& J" ?& [3 p+ ?& \2 ?1 @; @' R    基于此次事件,为提高自己的算法水平和建模能力,今后的一年里,将根据《算法导论(第三版)》里所讨论的算法,挨着用matlab刷一遍,加固自己的算法底子;并结合自己生活中遇到的问题,尝试用建模来解决问题。
: }$ m. u( X; ~2 c' r2 r+ \/ e4 b! ?, R. P/ H$ g' w3 ?# `
(一)插入排序* ~, Y0 P2 H/ j6 K! m
  • %插入排序  从小到大排列
  • A=[5 2 4 6 1 3]%源数据
  • for j=2:length(A)%从2号位开始进行插入
  •     key=A(j);%当前插入数字
  •     i=j-1;%插入数字的地址的前一位,从后往前插入
  •     while i>0 & A(i)>key% i>0已为当前排序数组最小值; A(i)>key 判断当前插入数字key和正在轮着比较数字的值大小
  •         A(i+1)=A(i);%插入数字比判断的小,则判断位数字后移
  •         i=i-1;%地址往前移动
  •     end
  •     A(i+1)=key;%在判断的当前位置插入当前判断数字(因为多减了一个地址,所以+1)
  • end
  • A  %输出结果
      E0 K& T6 C  e2 n
( X3 v. D9 y1 c
' x# ~5 K) f3 g  G$ L$ b& _* [  c
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-8-12 15:40 , Processed in 0.125000 second(s), 23 queries , Gzip On.

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

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

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