zoukankan      html  css  js  c++  java
  • 动态数组的申请与鞍点的测算

    今天老师上课数据结构讲到了字符串和数组,字符串让我们用回溯法测算。后来叫我们做了一个动态数组的申请,加上算鞍点的算法。下面是我的完整代码

    #include<iostream>
    using namespace std;
    void main()
    {
     int *p;
     int m,n,i,j;
     cout<<"请输入行:";cin>>m;
     cout<<"请输入列:";cin>>n;
     p=new int[m*n];
     for(int i=1;i<=m*n;i++)
      p[i]=100+i;
     cout<<"您创建的二维数组是:"<<endl;
     for(i=1;i<=m;i++)
      {for(j=1;j<=n;j++)
       cout<<" "<<p[(i-1)*n+j];
     cout<<endl;}
     for(i=1;i<=m;i++)
     {   int m1=0;
      int Min=p[(i-1)*n+1],Min1=p[(i-1)*n+1];
      for(j=1;j<=n;j++)
              {if(Min<p[(i-1)*n+j])
        m1=j;}
      for(j=1;j<=m;j++)
       if(p[(j-1)*n+m1]<p[(i-1)*n+m1])
        break;
      if(j==5)
      {cout<<endl;
       cout<<"鞍点:"<<p[(i-1)*n+m1];break;
      }
     
     if(i==5)
     cout<<"此矩阵不存在鞍点.";}
    }

    在做这个程序的时候我遇到了几个问题和心得,下面我们就来分享一下

    1.在动态申请的时候我首先是用指针的,刚开始我把输入动态的数组的个数给忘了,最后在运行的时候系统报错的。在不断的调试中找到了这个低级的错误,从这件事情上我感觉到像我们这样的程序员在编写程序的时候范这样的低级错误也是不可避免的,在遇到这种情况的时候我们要淡定。我们要学会用调试找到我们的错误所在。

    2.就是在算鞍点的时候我有大意了,在循环的时候我没有设置全局的变量而是在for循环里了,导致我运行的时候不识别局部的变量i和j了。

    大概就是这几个方面。希望在以后能狗得到改变

  • 相关阅读:
    项目笔记:统计页面功能实现
    jquery easyui datagrid实现数据改动
    Skia图片解码模块流程分析
    TRIZ的成功案例
    基于HTML5的Web SCADA工控移动应用
    webservices系列(五)——javaweb整合Axis2及多service配置
    org.hibernate.PropertyValueException: not-null property references a null or transient value: model.
    线程池和异步线程
    [leetcode]Implement strStr()
    Python工作日类库Busines Holiday介绍
  • 原文地址:https://www.cnblogs.com/zhangxinhua/p/8319270.html
Copyright © 2011-2022 走看看