转眼已经2016年3月1日了,前一阵子忙了很多事,包括下决心换了工作,也算是正式进了互联网行业。现在后头想想,人必须趁着有时间有精力时多折腾,毕竟人生短短几十年,如果不折腾以后肯定会后悔。

今天开始恢复更新博客了,计划今年要做的事:

1. 复习微积分

2. 复习概率论和统计学

3. 刷一遍leetcode

作为热身,先来一道最近微博上挺火的一道笔试题吧,据说没几个能无bug的写出来,我自己看了一下,觉得很简单,但写了一下还是不小心给绕进去了,看来算法题就得没事多练,既能预防老年痴呆,还能顺手提高智商。。。

逆序单项链表 要求空间复杂度o(1) 时间复杂度o(n)

 1 package com.autonavi.algo;
 2
 3 public class ReverseLinkedList {
 4
 5     public static void main(String[] args){
 6         Node node0 = new Node(null,0);
 7         Node node1 = new Node(null,1);
 8         Node node2 = new Node(null,2);
 9
10         node0.next = node1;
11         node1.next = node2;
12
13         Node node = node0;
14         while(null != node){
15             System.out.println(node.value);
16             node = node.next;
17         }
18
19         Node newHead = reverse(node0);
20
21         node = newHead;
22         while(null != node){
23             System.out.println(node.value);
24             node = node.next;
25         }
26     }
27
28     public static Node reverse(Node head){
29         Node p;
30         Node tmp = head.next;
31         head.next = null;
32         while(tmp != null){
33             p = tmp;
34             tmp = tmp.next;
35             p.next = head;
36             head = p;
37         }
38         return head;
39     }
40 }
41
42 class Node{
43     Node next;
44     int value;
45     Node(Node next, int value){
46         this.next = next;
47         this.value = value;
48     }
49     @Override
50     public String toString() {
51         return "Node [next=" + next + ", value=" + value + "]";
52     }
53
54 }

转载于:https://www.cnblogs.com/aalex/p/5231492.html

恢复博客更新 --- 逆序单项链表 要求空间复杂度o(1) 时间复杂度o(n)相关推荐

  1. SDUT _2117 数据结构实验之链表二:逆序建立链表

    点击打开链接 数据结构实验之链表二:逆序建立链表 Time Limit: 1000MS Memory Limit: 65536KB Submit Statistic Discuss Problem D ...

  2. 【链表】逆序打印链表

    1 public class Main { 2 3 // 逆序打印链表 4 public void reversePrint(Node node) { 5 if (node == null){ 6 r ...

  3. 博客更新内容简单介绍

    首先我们简单的介绍一下我们这个博客更新的内容,很多的时候我们都不知道怎么去学习java这门编程语言,那么我想做的事情就是通过我的博客,结合现在的企业里面的应用来给大家从最基础的东西开始手把手的交给大家 ...

  4. 链表逆序 java_链表逆序(JAVA实现)

    题目:将一个有链表头的单向单链表逆序 分析: 链表为空或只有一个元素直接返回: 设置两个前后相邻的指针p,q,使得p指向的节点为q指向的节点的后继: 重复步骤2,直到q为空: 调整链表头和链表尾: 图 ...

  5. python单向链表逆序_链表逆序-Python实现

    题目描述: 给定一个带头节点的单链表,将其逆序.即如果单链表原来为head->1->2->3->4->5->6->7,那么逆序后变为head->7-&g ...

  6. python单链表逆序_python链表倒序

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! python 实现双向链表(图解)----双向链表双向链表也叫双链表,是链表的一 ...

  7. C++ Python 链表逆序 反转链表

    ** 以下为C++版本 ** 已知链表头节点指针head,将链表逆序.(不可申请额外空间) #include<stdio.h> struct ListNode {int val; //数据 ...

  8. 数据结构实验之链表二:逆序建立链表

    题目描述 输入整数个数N,再输入N个整数,按照这些整数输入的相反顺序建立单链表,并依次遍历输出单链表的数据. 输入 第一行输入整数N;: 第二行依次输入N个整数,逆序建立单链表. 输出 依次输出单链表 ...

  9. POJ2528线段树段更新逆序异或(广告牌)

    题意:      可以这样理解,有一条直线,然后用n条线段去覆盖,最后问全部都覆盖完之后还有多少是没有被完全覆盖的. 思路:      一开始想的有点偏,想到起点排序,然后..失败了,原因是忘记了题目 ...

最新文章

  1. ffmpeg录屏/摄像头/指定窗口;别名alias设置
  2. pxe+kickstart无人值守安装
  3. pandas pivot 计算占比_数据分析Pandas 基础(二)
  4. 趣谈unicode,ansi,utf-8,unicode big endian这些编码有什么区别
  5. Python 本身真的没什么用!
  6. arm-hisiv100nptl-linux-gcc编译boa和移植
  7. 乔新亮:以赢为终,三个月打造一支硬核IT团队
  8. ftk学习记(list篇)
  9. spark RDD概念及组成详解
  10. Pokémon Go呼应设计:让全世界玩家疯狂沉迷
  11. java编写蠕虫病毒_网络蠕虫病毒代码分析
  12. cydia未能联到服务器,cydia无法加载,小编教你cydia无法加载怎么解决
  13. echarts地图随机点生成
  14. 详细解读行人重识别的k-reciprocal Encoding(k个相互近邻编码方法) re-ranking方法及其实现代码解读
  15. JavaWeb专栏之(三):Eclipse创建JavaWeb项目
  16. 咪咕盒子链接服务器失败_咪咕打卡正式开启,你的疑问都可以在这里找答案!...
  17. WebRTC源码中turnserver的使用方法
  18. APK签名机制原理详解
  19. 计算机usb口不识别读卡器,windows7系统下usb读卡器读不出来如何解决
  20. Unity使用WASD控制人物移动

热门文章

  1. 【转】HashMap和HashSet的区别
  2. 一种简便的ios图片加密方法-对图片进行base64编码
  3. cheat sheet for cs221 at stanford: good luck
  4. 你自己永远是个非常非常弱小的一个东西
  5. 专门给大学做宣传视频的公司,一直干了16年,服务110多大学: 专业的力量
  6. UNITY 模型与动画优化选项
  7. 关于ConcurrentHashMap在jdk1.7的升级到1.8中的变化
  8. 廖大python实战项目第三天
  9. 浅谈js本地图片预览
  10. linux下ip冲突检测 arp