排序算法简介(时间频度,时间复杂度,空间复杂度)

这篇博客介绍了排序算法中的时间频度、时间复杂度和空间复杂度。讨论了内部排序算法,如直接插入、冒泡、快速等,并通过代码示例解释了如何测试算法运行时间。时间复杂度部分涵盖了常数阶、对数阶、线性阶、线性对数阶、平方阶等,强调了不同阶别的增长趋势。同时,也提及了空间复杂度,指出其衡量算法所需存储空间的重要性。
摘要由CSDN通过智能技术生成

排序算法

内部排序:直接使用内存的排序

直接插入排序,希尔排序,简单选择排序,堆排序,冒泡排序,快速排序,归并排序,基数排序

测试算法运行的时间

这里是用的是输出算法执行前的时间,和算法执行之后的时间,来查看算法实际花费的时间。

代码:

import java.text.SimpleDateFormat;
import java.util.Date;
				
				//排序前的时间输出
        Date date = new Date();
        SimpleDateFormat  simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        String Date1 = simpleDateFormat.format(date);
        System.out.println("排序前的时间为"+Date1);
        
        //排序之后的时间的输出
        Date date_after = new Date();
        String Date2 = simpleDateFormat.format(date_after);
        System.out.println("排序前的时间为"+Date2);

时间频度

一个算法中的语句执行次数称为语句频度和时间频度,记为T(n)。

一般来说,T(n)可以忽略常数项,忽略低次项,忽略系数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值