第一课、进阶高手的大门--------------------狄泰软件学院

一、进阶高手的大门

1、理解程序的本质

(1)、程序是为了解决实际问题而存在的

(2)、从本质上上而言,程序是解决问题步骤的描述

2、一小步的进阶:理解实际问题

(1)、确认问题类型:如:数值计算,求最小值个数

(2)、确认求解步骤:如:打开文件,读数据,关闭文件,计算和

3、程序评鉴初探(同一个问题有多个解决方案

(1)、用尽量少的时间解决问题

(2)、用尽量少的步骤解决问题

(3)、用尽量少的内存解决问题

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;
}
程序的好坏

4、数据结构课程研究的范围

(1)、非数值计算类型(不是数据的科学计算问题的程序问题

(2)、数据间的组织和操作方式

(3)、数据的逻辑结构和存储结构

5、历史上的经典公式

(1)、程序=数据结构+算法

注意:对于数据结构和算法的研究,思想重要, 语言重要

二、小结

(1)、程序是为了解决实际问题而存在的

(2)、针对同一个问题可以有多种解决方案

(3)、专业程序员应该尽量追求高质量的程序

(4)、数据结构课程主要研究的是非数值计算问题

posted @ 2017-03-20 13:19  lgc202  阅读(315)  评论(0编辑  收藏  举报