zoukankan      html  css  js  c++  java
  • 判断闰年的方法以及如何获得单链表的倒数第K个元素

      今天很悲催,心中向往的公司,打电话过来面试,问到我两个问题,结果竟然都没有回答上,伤心了,记录下今天失败,希望以后不要被同样的问题给PASS.

      问题1.如何判断是否为闰年

      所谓闰年那就是:四年一闰,百年不闰,四百年再闰。

      其实代码也就是 if((n%4 == 0 && n%100 != 0) || n %400 == 0){} 最原始的方法。

      记不住判断闰年的定义,导致无法回答。

      问题2.如何获得单链表的倒数第K个元素(时间复杂度最小)

      方法(1) 首先查找到整个链表中的元素个数, 然后再一次遍历该数组,找到第n-k+1个元素,即为所求。

      缺点:这需要两次遍历链表,当链表中的元素个数很多的时候,耗费时间。
      方法(2):定义两个指针p,q,初始时都指向头节点间,然后q向后移动,p则保持不动。
      当q移动到第K个位置的时候,pq两个节点同时向后移动,当q达到链表尾部的时候, p节点所指向的位置,即为所求。

          看起来很简单,可是面试的时候,这些真不知道如何去答。

      希望以后不要再在这里跌倒了!!!

  • 相关阅读:
    中间件
    Linux命令
    Ionic 2 Guide
    JSON WEB TOKENS
    用MSBuild和Jenkins搭建持续集成环境(2)
    用MSBuild和Jenkins搭建持续集成环境(1)
    全文检索和消息队列
    redis之如何配置jedisPool参数
    Redis Clients Handling
    redis.clients.jedis.exceptions.JedisConnectionException: Could not get a resource from the pool
  • 原文地址:https://www.cnblogs.com/akwwl/p/3679542.html
Copyright © 2011-2022 走看看