LintCode 链表排序[通俗易懂]

LintCode 链表排序[通俗易懂]题目描述:在O(nlogn)时间复杂度和常数级的空间复杂度下给链表排序。样例给出1->3->2->null,给它排序变成1->2->3->null.思路分析:sort扫一遍~ac代码:/***DefinitionofListNode*classListNode{*public:*intval;*ListNode*next;

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

题目描述:

在 O(n log n) 时间复杂度和常数级的空间复杂度下给链表排序。

样例
给出 1->3->2->null,给它排序变成 1->2->3->null.

思路分析:

sort扫一遍~

ac代码:

/** * Definition of ListNode * class ListNode { * public: * int val; * ListNode *next; * ListNode(int val) { * this->val = val; * this->next = NULL; * } * } */
class Solution { 
   
public:
    /** * @param head: The first node of linked list. * @return: You should return the head of the sorted linked list, using constant space complexity. */
    ListNode *sortList(ListNode *head) {
        // write your code here

int a[1000005];
int top=0;
while(head!=NULL)
{
    a[top++]=head->val;
    head=head->next;
}
sort(a,a+top);
ListNode *dummy,*r,*s;
dummy=new ListNode(0);
r=dummy;
for(int i=0;i<top;i++)
{
    s=new ListNode(a[i]);
    r->next=s;
    r=s;
}
return dummy->next;

    }
};


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/184193.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Mysql错误1452 – Cannot add or update a child row: a foreign key constraint fails 原因及解决方法[通俗易懂]

    Mysql错误1452 – Cannot add or update a child row: a foreign key constraint fails 原因及解决方法[通俗易懂]报错的原因大概分为三种:原因一:添加的外键列与另一个表的唯一索引列(一般是主键)的数据类型不同原因二:要添加外键的表类型与另一个表的存储引擎是不是都为innodb引擎#查看表引擎法一:showcreatetable表名;法二:showtablestatusfrom数据库wherename=‘表名’;法三:useinformation_schema;selec…

    2022年6月15日
    54
  • LeetCode–046–全排列(java)

    LeetCode–046–全排列(java)给定一个没有重复数字的序列,返回其所有可能的全排列。示例:无奈,用swap的方法从左向右滑动,直到最后结果和最初的一致停止,只适用于三位数。。。。(改进一下让每个数字作为第一位后面的进行滑动,应该

    2022年7月3日
    19
  • Python第七章-面向对象高级

    Python第七章-面向对象高级面向对象高级一、特性特性是指的property.property这个词的翻译一直都有问题,很多人把它翻译为属性,其实是不恰当和不准确的.在这里翻译成特性是为了和属性区别开来.属性是指的

    2022年7月6日
    17
  • varchar2和varchar2(char)_datetime数据类型

    varchar2和varchar2(char)_datetime数据类型charvarcharvarchar2的区别 区别:1.CHAR的长度是固定的,而VARCHAR2的长度是可以变化的,比如,存储字符串“abc”,对于CHAR(20),表示你存储的字符将占20个字节(包括17个空字符),而同样的VARCHAR2(20)则只占用3个字节的长度,20只是最大值,当你存储的字符小于20时,按实际长度存储。 2.CHAR的效率比VARCHAR2的效

    2022年4月20日
    47
  • nginx和apache优缺点

    nginx和apache优缺点nginx与Apache的对比今天准备较详细的对比一下apachehttpd与nginx两个web服务器的异同点、优缺点。由于我并不是做web开发的,所以有什么理解错误还请指出,想要了解它们是因为工作中有时候会用到它,有系统中用到了nginx+apache。本文绝大多数资料都是摘抄网上,自己做的只就是整合网上零散的资源然后加上自己的一点见解。简单的说apachehttpd和nginx都是we…

    2022年5月16日
    37
  • Java的Executor框架和线程池实现原理

    Java的Executor框架和线程池实现原理一,Java的Executor框架1,Executor接口publicinterfaceExecutor{voidexecute(Runnablecommand);}Executor接口是Executor框架中最基础的部分,定义了一个用于执行Runnable的execute方法,它没有实现类只有另一个重要的子接口ExecutorService2,Exe

    2022年10月28日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号