数据结构
文章平均质量分 56
刘哩子不会写代码
这个作者很懒,什么都没留下…
展开
-
Leetcode算法-合并两个有序链表-3
合并两个有序链表 将两个升序链表合并为一个新的升序链表并返回。新链表是通过拼接给定的两个链表的所有结点组成的。 两个链表中的元素依次相比较,将比较中较小的元素拼接至新的链表中。 struct ListNode* mergeTwoLists(struct ListNode* list1, struct ListNode* list2) { struct ListNode* p1=list1; struct ListNode* p2=list2; struct ListNode* p3=(struc原创 2021-12-03 14:48:30 · 236 阅读 · 0 评论 -
Leetcode算法-反转链表-3
反转链表 给你一个单链表的头节点head,请你反转链表,并返回反转后的链表。 从第一个节点开始依次使用头插法插入第一节点前。 struct ListNode* reveseList(struct ListNode* head) { struct ListNode* p=head; struct ListNode* r; head=NULL; while(p) { r=p->next; p->next=head; head=p; p=r; } return he原创 2021-11-30 19:46:48 · 334 阅读 · 0 评论 -
数据结构nowcoder-NOTE(持续更新)
链表: 无需事先估计空间 增删不需要挪动元素,比较方便 不支持随机访问 地址不连续 时间复杂度指的是一个数量级的概念(查找第i个也是O(n)) 链式存储时,结点的存储地址可以随意分配(链表中有指针域可以找到下一个链表结点的存储地址,连续与否都可以) 链表是一种物理存储单元上非连续、非顺序的存储结构 线性表的顺序存储结构中逻辑顺序与物理顺序总是一致的,但链表存储结构不一致 数组从栈中分配空间(数组元素在栈区),链表从堆中分配空间(在堆区) 数组静态分配内存,链表动态分配内存原创 2021-11-15 23:00:42 · 860 阅读 · 0 评论 -
数据结构与算法-1-初认识
数据结构(data structure)是计算机中储存、组织数据的方式。 数据结构是一种具有逻辑关系,在计算机中应用某种储存结构,并且封装了相应操作的数据元素结合。它包含了三方面的内容:逻辑关系、储存关系、操作。 不同种类的数据结构适合用于不同种类的应用,而部分甚至专门用于特定的作业任务。例如,计算机网络依赖于路由表运作,B树高度适用于数据库的封装。 为什么要学习数据结构和算法 随着应用程序变得越来越复杂和数据越来越丰富,几百万、几十亿甚至几百亿的数据就会出现, 而对这么大的数据进行搜索 ...转载 2021-08-30 11:04:31 · 87 阅读 · 0 评论