随笔分类 - 算法和数据结构
摘要:算法-(一维数组) 在我觉得算法是一种能够提升程序性能和面试必备的利器,尤其是去外企,或者一些好的企业。并且在写算法的同时,会锻炼到我们的逻辑思考能力和空间想象能力。所以接下来我想聊聊一些常用的算法,在之前的文章中聊到了一些零散的算法,比如翻转链表,以及深度拷贝链表。但是那些都不成体系。所以接下来的
阅读全文
摘要:深度拷贝带随机指针的链表(Copy List with Random Pointer) 创建一个新对象,然后将当前对象的非静态字段复制到该新对象,无论该字段是值类型的还是引用类型,都复制独立的一份。当你修改其中一个对象的任何内容时,都不会影响另一个对象的内容,这是对java类深拷贝的描述。实际上就是
阅读全文
摘要:ReverseLinkedList(翻转链表) 链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。非连续、非顺序指的是,通过指针把一组零散的内存块串联在一起,其中每一个内存块叫做链表的节点,所以每个节点包含两部分一个data(你存放的数据),一个n
阅读全文
摘要:时间&空间复杂度 时间复杂度: 通俗来说就是随着数据量的增加,程序运行的时间花费量是怎么变化的,时间复杂度常用大o表示。举个例子,猜数字,猜10个,100个、1000个,猜数的数据量是在增加的,但是实际运行程序花费的时间是怎么变化的呢,是线性的?常数的?还是指数的,它反映的是一个趋势。简而言之,时间
阅读全文

浙公网安备 33010602011771号