快速排序算法调试记录.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
快速排序算法调试记录

快速排序算法.exe 调试记录 界面: 说明:主要采用了3个Label控件,1个TextBox控件,2个CommandButton控件,1个PictureBox控件,力求界面简洁明了,容易操作。 程序调试: PART1:对“开始排序”按钮触发程序的调试记录 第一次调试: 代码: Private Sub quicksort(ByRef arrValue() As String, ByVal intLx As Integer, ByVal intRx As Integer) arrValue()是待排的数组,intLx,intRx为左右边界 Dim strValue As String Dim I As Integer Dim j As Integer Dim intLoop As Integer I = intLx j = intRx Do While arrValue(I) = arrValue(j) And I j: I = I + 1: Wend If I j Then strValue = arrValue(I) arrValue(I) = arrValue(j) arrValue(j) = strValue End If While arrValue(I) = arrValue(j) And I j: j = j - 1: Wend If I j Then strValue = arrValue(I) arrValue(I) = arrValue(j) arrValue(j) = strValue End If Loop Until I = j I = I - 1: j = j + 1 If I intLx Then Call quicksort(arrValue, intLx, I) End If If j intRx Then Call quicksort(arrValue, j, intRx) End If End Sub Private Sub Form_Load() Dim arr(8) As String arr(0) = r arr(1) = e arr(2) = a arr(3) = n arr(4) = b arr(5) = u arr(6) = c arr(7) = o arr(8) = f Call quicksort(arr, 0, UBound(arr)) End Sub 调试结果及分析:完全没与Text1和Picture1挂钩,无法使用,需推倒重来。但其中新数据类型的引入对以后新代码的编写有参考意义。 第二次调试: 代码: Private Sub Command1_Click() Dim strX As String Dim A Dim strY As Integer Dim I, J As Integer Text1.Text = strX = Text2.Text A = Split(strX, vbCrLf) For I = 1 To UBound(A) - 1 For J = I + 1 To UBound(A) If A(I) A(J) Then strY = A(I) A(I) = A(J) A(J) = strY End If Next J Next I For I = 1 To UBound(A) Text2.Text = Text2.Text A(I) vbCrLf Next I End Sub 调试结果及分析:本组代码与采用Text1输入,Text2输出的方法,但测试时对于Text1输入的数组,Text2中并没有产生任何数据。我们决定推倒重来。 第三次调试: 代码: Private Sub Command1_Click() Dim s s = Split(Trim(Text1.Text), ) Dim smin As Integer For i = 0 To UBound(s) For j = 0 To UBound(s) - 1 If s(j) s(j + 1) Then smin = s(j) s(j) = s(j + 1) s(j + 1) = smin End If Next j Next i For i = LBound(s) To UBound(s) Picture1.Print s(i) ; Next i End Sub 说明:该段代码采用了双循环嵌套模式,并且选用了新的数据类型。 调试数据记录表: 测试序号 输入 输出 1 12 1 3 23 31 25 2 1 12 2 23 25 3 31 调试结果分析:直观地可以看出,该程序优先按照最高位数字大小

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档