编程基础知识大全

  1.  前序,中序,后序遍历:所谓前,中,后都是对根节点的位置而言。

    前序遍历:先根节点,后左子树,再右子树。
    中序遍历:先左子树,后根节点,再右子树。
    后序遍历:先左子树,后右子树,再根节点。

  2. 树的深度优先遍历、广度优先遍历
    这些概念记得大学时还是比较清楚的,但是由于工作中几乎就没用过,终归模糊了。查了查很快就能想起来了。

    深度优先遍历:是指在没遍历完所有的直接子节点时,就对子节点递归地访问下去。这样以来,就会沿着一个节点的第一个子节点不断递归下去,以实现深度遍历。
    广度优先遍历:是指必须遍历完所有的直接子节点后,才能对子节点的子节点进行顺序访问。

  3. 冒泡排序(从小到大排序)

    循环区间【0,n-i-1】,闭区间是指包含。其中的i从0变化到n-1。并且冒泡排序是以相邻元素进行互换的形式进行的。相邻元素中大者往后走。改进后的冒泡排序使用了一个标志,以便于在某躺遍历中及时发现数组已经呈现有序状态。代码如下:

    int iArray[]={7,1,2,6,3,6,4,2};
    
     int iFlag=true;
     int iLength=sizeof(iArray)/sizeof(int);
    
     for(int i=0;i<iLength;i++)
     {
      iFlag=TRUE;
    
      for(int j=0;j<iLength-1-i;j++)
      {
       if(iArray[j]>iArray[j+1])
       {
        int iT=iArray[j];
        iArray[j]=iArray[j+1];
        iArray[j+1]=iT;
    
        iFlag=FALSE;
       }
      }
    
      if(TRUE==iFlag)
       break;
     }
    

    以第一趟排序为例:先比较元素1和元素2,如果元素1大于元素2,则交换两个元素。然后比较元素2和元素3,以此类推。

  4. 为何引进进程?

    计算机中多道程序并行时,由于共享资源,程序之间会出现制约关系,这种制约会使程序执行出现间歇性的状态,例如当一个程序获得资源而另一个程序需要且此资源是不能同时共享时,则后者需要停止运行,等到前者释放该资源。正是因为这些间歇性的特征,使用程序是无法记录的,因为程序是存储在计算机内的静态指令集合,如果记录间歇性的动态特征。所以引进了进程,进程由程序,数据和进程控制块组成。

时间: 2024-07-29 02:54:01

编程基础知识大全的相关文章

PowerShell面向对象编程基础知识总结_PowerShell

本文介绍PowerShell面向对象编程的基础知识,我们知道PowerShell里面的所有变量和输出都是对象,所以有必要在进行PowerShell编程时了解一下面向对象编程的基础知识. 面向对象编程的引入主要是为了解决软件复杂化带来的维护等问题,早在20世纪60年代,面向对象就已经出现了.虽然C语言并不支持面向对象的特性,但是使用C语言进行开发的程序人员已经将面向对象的核心思想应用到其中,因此我们更应该理解的是面向对象的思想,而不需要纠缠于语言本身. PowerShell是基于对象的脚本语言,因

[python] 专题九.Mysql数据库编程基础知识

        在Python网络爬虫中,通常是通过TXT纯文本方式存储,其实也是可以存储在数据库中的:同时在WAMP(Windows.Apache.MySQL.PHP或Python)开发网站中,也可以通过Python构建网页的,所以这篇文章主要讲述Python调用MySQL数据库相关编程知识.从以下几个方面进行讲解:         1.配置MySLQ         2.SQL语句基础知识         3.Python操作MySQL基础知识         4.Python调用MySQL

C# 网络编程之套接字编程基础知识

      最近阅读了周存杰编写的<C#网络编程实例教程>并阅读了很多相关方面的资料,同时自己也做了一些套接字编程方面的C#程序,所以根据它的知识总结了最近的套接字编程的一些知识点,方便自己的理解与他人的学习,同时也有一些自己以前学习的计算机网络.操作系统等相关知识. 一.   套接字编程的概念       套接字(Winsock)是一种独立于协议的网络编程接口,在OSI中集中在会话层和传输层.(补充知识)简单回归网络知识,计算机网络中的"五层协议的体系结构"和"

Java的Socket网络编程基础知识入门教程_java

一.TCP/IP简介 TCP/IP协议族是互联网使用的协议,也可以用在独立的专用网络中. TCP/IP协议族包括了IP协议.TCP协议和UDP协议. IP协议使用IP地址来分发报文,但它是尽力而为的服务,报文可能丢失.乱序或者 重复发送.TCP和UDP协议在IP协议基础上增加了端口号,从而在两台主机的应用 程序间建立起透明的连接. 不同的是,TCP协议会对IP层的错误进行修复,它通过握手消息在主机间建立连接, 之后通过在消息中加入序列号来恢复消息中的错误.而UDP只是简单地扩展了IP协议, 使它

.NET软件测试实战技术基础知识大全

一.软件测试基础篇 1. 软件质量测试基础介绍 ● 软件质量与软件测试 ○ 仅依靠软件测试不能保证软件质量 ○ 进行全面质量管理 ● 软件开发与软件测试 ○ 具备UML或编程可以做更多层面的测试,如单元,白盒,性能测试 ● 测试工具与软件测试 ○ 按照用途分 · 测试管理工具 · 自动化功能测试工具 · 性能测试工具 · 单元测试工具 · 白盒测试工具 · 测试用例设计工具 ○ 按收费方式 · 商业测试工具 · 开源测试工具 · 免费测试工具 ○ 正确使用测试工具 ● MSF(Microsoft

javascript基础知识大全 便于大家学习,也便于我自己查看_javascript技巧

1.javascript的数组API 复制代码 代码如下: //定义数组 var pageIds = new Array(); pageIds.push('A'); 数组长度 pageIds.length; //shift:删除原数组第一项,并返回删除元素的值:如果数组为空则返回undefined var a = [1,2,3,4,5]; var b = a.shift(); //a:[2,3,4,5] b:1 //unshift:将参数添加到原数组开头,并返回数组的长度 var a = [1,

电脑硬盘基础知识大全

电脑硬盘是电脑很重要的一个组成部分.电脑硬盘出现故障的话,电脑将无法运作.下面给大家介绍一下电脑硬盘的相关知识: 市场上的硬盘主要分为IDE和SCSI两大类.SCSI硬盘有速度快.容量大.使用稳定的特点,是硬盘技术的排头兵,但其价格太贵,主要用于较 专业的场合.而IDE硬盘虽然说在技术水准上尚同SCSI硬盘有一些的差距,但无庸置疑其差距已越来越小,现如今的IDE硬盘同样具有转速快.容量大的特 点,而且其价格便宜,已成为家用场合的首选. 而IDE硬盘按其内部盘片直径的大小,又可分为5.25.3.5

shell编程基础知识小结_linux shell

1.文件类型介绍linux系统中主要包括以下七种文件类型: d 目录 - 普通文件 l 符号链接 s 套接字文件 b 块设备文件 c 字符设备文件 p 命名管道文件 2.正则表达式正则表达式在shell编程中非常重要. 从一个文件或命令输出中抽取或过滤文本时.可使用正则表达式(RE),正则表达式是一些特殊或不很特殊的字符串模式的集合. 基本的元字符集:^ 只匹配行首.$ 只匹配行尾.* 一个单字符后紧跟*,匹配0个或多个此单字符.[] 匹配[]内字符,可以是一个单字符,也可以是字符序列.可以使用

使用VBA开发Word文档的编程基础知识

  ①什么是对象和集合 对象代表一个 Word 元素,如文档.段落.书签或单独的字符.集合也是一个对象,该对象包含多个其他对象,通常这些对象属于相同的类型;例如,一个集合对象中可包含文档中的所有书签对象.通过使用属性和方法,可以修改单独的的对象,也可修改整个的对象集合. ②什么是属性 属性是对象的一种特性或该对象行为的一个方面.例如,文档属性包含其名称.内容.保存状态以及是否启用修订.若要更改一个对象的特征,可以修改其属性值. 若要设置属性的值,可在对象的后面紧接一个句号.属性名称.一个等号及新