博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第二章实践小结
阅读量:4312 次
发布时间:2019-06-06

本文共 594 字,大约阅读时间需要 1 分钟。

  第二章实践是求两个集合的交集,首先我在这次实践中学到的是sort函数,利用sort函数对一个数组进行排序方便很多,因为以前是自己写一个子函数调用来排序。sort函数的用法是我百度的,这也说明了平时遇到难题的时候,要先学会自己去想办法解决问题,不行再去问别人。

  然后就是归并排序,在做这道题的过程中还参考了归并,也知道了归并排序这种方法。而我在这次实践中的问题是每个数组都有十万个数的时候会超时,我一开始写的是这样的:

这种方法的时间复杂度是O(mn),用的时间很长所以必须要想办法缩短时间。最后我的做法是在一开始就把两个数组放到一个大数组里面,再对该数组进行排序,然后比较这个数组相邻两个数是否相等,然后就可以求出交集,这是我最后的方法:

这个方法的时间复杂度是O(m+n)。

  这个方法是我问同学得出来的,这和嘉骏同学在群里提出来的差不多,这个方法比我一开始的方法好很多,节约了很多时间,做法也简单很多。所以我觉得在平时做题的时候,要多想想用什么办法比较好,多想一些办法,并且去比较这些方法的优缺点,多积累。在上课的时候,也有很多同学提出了很多很好的办法,比如说插入排序等等,大家的想法都有各自的优点,所以要多思考,多看看别的同学是怎么做的,不断改进自己的办法,才能有进步。

 

转载于:https://www.cnblogs.com/skye13/p/10541771.html

你可能感兴趣的文章
c++课程设计之菜单选择\\
查看>>
iOS 的 XMPPFramework 简介
查看>>
hdu 3555 数位dp入门
查看>>
Git学习系列-Git基本概念
查看>>
c#多个程序集使用app.config 的解决办法
查看>>
模仿网站登录注册
查看>>
Linux+Apache+PHP+MySQL服务器环境配置(CentOS篇)
查看>>
Linux下获取本机IP地址的代码
查看>>
(C#)调用Webservice,提示远程服务器返回错误(500)内部服务器错误
查看>>
flex布局
查看>>
python-----python的文件操作
查看>>
java Graphics2d消除锯齿,使字体平滑显示
查看>>
java 初级复习。
查看>>
工厂模式学习
查看>>
蓝牙2
查看>>
css的盒模型,及css3的box-sizing新属性
查看>>
图解机器学习读书笔记-CH1
查看>>
控件中添加的成员变量value和control的区别
查看>>
Spring Boot Docker 实战
查看>>
Div Vertical Menu ver3
查看>>