`
茖-荌
  • 浏览: 31313 次
社区版块
存档分类
最新评论

数据结构与排序

阅读更多

    数据结构与排序
一、数据结构
  1.数据结构可以抽象的认为是用来装数据的容器,当然这个装数据的容器还应该具有添加数据    、删除数据、插入数据、访问数据等功能。
  2、我个人认为数据结构是保存数据、删除数据、修改数据、插入数据、遍历数据等方法的集    合。
  3、常见的数据结构有数组、队列、链表、映射等。数组我们都很熟悉,它一般被指定长度和      数据类型,它在内存是一块连续的空间,我们可以通过数组的下标来访问每一个元素。队列    可以认为是一个动态的数组,它可以根据需要来增加长度,类是于排队,来的人只要往后排    就可以了,这个名称的确很形象。

二、排序
    1、排序是我们常用来对一组数据进行的操作。常用的排序方法有冒牌排序法、选择排序法 、插入排序    法、希尔排序法。

   2、冒泡排序法,代码和注解如下:

 //arr为要排序的一组数据
      public static void maopao(int[] arr){
               //temp是用来做交换的中间变量
		int temp;
                //第一个循环每循环一次,便能找出这组数据里最大的数
		for(int i=0;i<arr.length-1;i++){
                     //第二个循环是用来做比较
			for(int j=i+1;j<arr.length;j++){
                                //如果前面的数比后面的数小,则交换它们的值 
				if(arr[i]>arr[j]){
                                       //这是交换过程    
					temp=arr[i];
					arr[i]=arr[j];
					arr[j]=temp;
				}
			}
		}  
             //排好序后把数组返回
                return arr;     
           }

 

3、选择排序法,代码和注解如下:

         public static void xuanze(int[]arr){
         //第一个循环每循环一次,便能找出这个数组中最大的数对应的下标
    	  for(int i=0;i<arr.length;i++){
                //用来保存对应每次比较后最小的数,开始时可能不是最小
    		int lowerindex=i;
    		//找出最小的一个引索
    		for(int j=i+1;j<arr.length;j++){
                        //和后面的数比较,如果后面的数大,则用lowerindex保存值大的下标
    			if(arr[j]<arr[lowerindex]){
    				lowerindex=j;
    			}
    		}
    		//交换一下值,使arr[i]比后面的数大
    		int temp=arr[i];
    		arr[i]=arr[lowerindex];
    		arr[lowerindex]=temp;
    	    }
            //排好序后把数组返回
                return arr;     
           }

 
      4.插入排序法

 public static void charu(int[]arr){
    	//排序过程
            for(int i=0;i<arr.length;i++){
    		for(int j=i;j>0;j--){
    			if(arr[i]<arr[j-1]){
    				int temp=arr[j];
    				arr[j]=arr[j-1];
    				arr[j-1]=temp;
    			}
    		}
    	  }
           //排好序后把数组返回
                return arr;   
        }

 

5、希尔排序法是效率比较高的排序方法,但是我就是不太了解,望有大神指教!。

分享到:
评论

相关推荐

    算法ppt 数据结构、排序等

    数据结构与排序是计算机科学中的核心概念,它们在编程和算法设计中扮演着至关重要的角色。数据结构是指在计算机中组织和存储数据的方式,而排序则是对这些数据进行有效处理的关键技术。 首先,我们来深入了解一下...

    数据结构排序算法演示系统

    《数据结构排序算法演示系统详解》 在计算机科学领域,数据结构与排序算法是至关重要的基础知识,它们直接影响到程序的效率和性能。本文将详细解析“数据结构排序算法演示系统”,探讨其中蕴含的多种排序算法及其原...

    数据结构java版 排序算法

    【数据结构与排序算法在Java中的应用】 在计算机科学中,数据结构是组织和存储数据的方式,而排序算法则是对这些数据进行排列的策略。在Java编程中,掌握各种排序算法对于提高程序效率至关重要。本篇文章将深入探讨...

    C++ 数据结构 排序实验

    在本实验中,我们将深入探讨C++编程语言中的数据结构与排序算法。排序是计算机科学中最基础且重要的问题之一,它涉及到如何有效地重新排列一系列数据,以便按照特定标准(如升序或降序)进行访问。这个“C++ 数据...

    数据结构与排序算法

    数据结构加强之排序算法讲解,冒泡,直接排序,归并排序,插入排序,快速排序等经典排序方法

    数据结构基数排序数据结构基数排序

    数据结构中的基数排序是一种非比较型整数排序算法,它基于数字的位宽进行排序,尤其适用于处理大量相同数字的情况。基数排序的核心思想是将数字按照位数从低位到高位分别进行桶排序,最终得到完全有序的序列。下面将...

    c语言 数据结构 快速排序算法

    c语言版本的数据结构的快速排序算法,适用于新手学习

    动画演示swf-数据结构+排序

    数据结构与排序是计算机科学中的基础且至关重要的概念,它们对于理解如何有效地存储和处理大量信息至关重要。在“动画演示swf-数据结构+排序”这个压缩包中,包含了一系列生动形象的SWF动画,旨在帮助学习者通过视觉...

    数据结构冒泡排序算法

    数据结构冒泡排序算法 数据结构冒泡排序算法

    数据结构试验 排序问题 C语言 源代码

    在IT领域,数据结构与算法是核心组成部分,而排序问题是数据结构中不可或缺的一部分。本主题主要聚焦于数据结构试验中的排序问题,通过C语言来实现内部排序算法。下面将详细介绍这些概念及其相关知识。 首先,数据...

    数据结构 排序算法 冒泡

    数据结构与排序算法是计算机科学中的基础且至关重要的部分,特别是在优化程序性能和解决复杂问题时。冒泡排序作为其中一种基本的排序算法,虽然效率相对较低,但因其简单易懂,常被用于教学和理解排序算法的工作原理...

    数据结构拓扑排序

    数据结构拓扑排序

    数据结构排序实验报告

    ### 数据结构排序实验报告知识点解析 #### 实验背景与目的 - **实验背景**:本实验报告来源于南昌大学科学技术学院信息学科部计算机系的一次专业课程实验。《数据结构》作为一门重要的计算机基础课程,其目的在于...

    数据结构之二叉排序树的生成

    二叉排序树,又称二叉查找树或二叉搜索树,是一种特殊的数据结构,它具有以下特性:对于树中的任意节点,其左子树中的所有节点的值都小于该节点的值,而右子树中所有节点的值都大于该节点的值。这种特性使得在二叉...

    数据结构-各种排序完整示例程序

    在计算机科学领域,数据结构和排序算法是至关重要的基础,它们直接影响到程序的效率和性能。本资源包“数据结构-各种排序完整示例程序”提供了C语言实现的各种经典排序算法,帮助学习者深入理解并掌握这些算法的实际...

    数据结构思维导图-排序.pdf

    2. **内部排序与外部排序**: - **内部排序**:所有待排序元素都驻留在内存中进行的排序,如插入排序、冒泡排序等。 - **外部排序**:由于数据量太大无法全部装入内存,需要在内外存之间频繁移动数据的排序过程。 ...

    数据结构与算法之排序

    在IT领域,数据结构与算法是基础且至关重要的部分,特别是排序算法,它们在软件开发中扮演着核心角色。本文将深入探讨“数据结构与算法之排序”,重点关注内部排序和外部排序。 首先,我们理解一下数据结构。数据...

    数据结构排序算法可视化的设计.pdf

    本文将详细介绍数据结构排序算法可视化的相关知识点,具体涵盖数据结构的定义、排序算法的种类及特点,以及可视化在数据结构排序算法教学中的应用。 一、数据结构基础 数据结构是计算机存储、组织数据的方式,它...

    数据结构实验排序程序

    通过实际编程,你可以更深入地理解数据结构与算法的关系,以及它们如何影响程序的性能。同时,这也是提高编程能力,特别是问题解决和逻辑思维能力的好机会。 文件名“排序”可能包含了实现这些排序算法的源代码文件...

Global site tag (gtag.js) - Google Analytics