【数据结构实战C++】1 数据结构初探

举报
CodeAllen 发表于 2021/10/30 00:20:32 2021/10/30
【摘要】 【数据结构实战C++】1 数据结构初探 作者 CodeAllen ,转载请注明出处 为什么会有各种各样的程序存在? 程序本质的意义是什么? 程序是为了解决实际问题而存在的 从本质而言,...

【数据结构实战C++】1 数据结构初探

作者 CodeAllen ,转载请注明出处


为什么会有各种各样的程序存在?
程序本质的意义是什么?

程序是为了解决实际问题而存在的
从本质而言,程序是为了解决问题的步骤描述

在这里插入图片描述
如何判断问题求解步骤的好坏?

判断求解步骤的好坏

/*
    问题:给定一个整数 n,编程求解 1 + 2 + 3 + ... + n 的和。
*/
#include <iostream>

using namespace std;

long sum1(int n)
{
    long ret = 0;
    int* array = new int[n];
    
    for(int i=0; i<n; i++)     
    {
        array[i] = i + 1;
    }
    
    for(int i=0; i<n; i++)
    {
        ret += array[i];
    }
    
    delete[] array;
    
    return ret;
}

long sum2(int n)
{
    long ret = 0;
    
    for(int i=1; i<=n; i++)   
    {
        ret += i;
    }
    
    return ret;
}

long sum3(int n)
{
    long ret = 0;
    
    if( n > 0 )
    {
        ret = (1 + n) * n / 2;
    }
    return ret;
}

int main()
{
    cout << "sum1(100) = " << sum1(100) << endl;
    cout << "sum2(100) = " << sum2(100) << endl;
    cout << "sum3(100) = " << sum3(100) << endl;
    
    return 0;
}

/*
sum1(100) = 5050
sum2(100) = 5050
sum3(100) = 5050
*/

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64

理解程序好坏的标准

  • 用尽量少的时间解决问题
  • 用尽量少的步骤解决问题
  • 用尽量少内内存解决问题

数据结构的起源
1968年,高纳德教授开创
同年,计算机学科的学位课程中出现(必修)

数据结构课程的研究范围

  • 非数值计算类型的程序问题
  • 数据间的组织和操作问题
  • 数据的逻辑结构和存储问题

一个经典的公式(语言不重要,重要的是思想)
程序 = 数据结构 + 算法

小结
程序是为了解决实际问题而存在的
针对同一个问题可以用多种解决方案
专业程序员应该尽量追求高质量的程序
数据结构课程主要研究非数值计算问题

文章来源: allen5g.blog.csdn.net,作者:CodeAllen的博客,版权归原作者所有,如需转载,请联系作者。

原文链接:allen5g.blog.csdn.net/article/details/105422781

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。