今天很悲催,心中向往的公司,打电话过来面试,问到我两个问题,结果竟然都没有回答上,伤心了,记录下今天失败,希望以后不要被同样的问题给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节点所指向的位置,即为所求。

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

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

判断闰年的方法以及如何获得单链表的倒数第K个元素的更多相关文章

  1. 20140719 找到单链表的倒数第K个节点 判断一个链表是否成为一个环形 反转

    1.找到单链表的倒数第K个节点 2.判断一个单链表对否形成环形 3.单链表翻转

  2. 查找单链表的倒数第k个值

    刚开始,我想到的是一种笨方法,先遍历单链表,计算出单链表的长度len,然后再从头遍历单链表到第len-k个节点,那么 这个节点既是单链表的倒数第k个节点. 不过这种算法时间复杂度挺高的,还有一种更简单 ...

  3. 查找单链表中倒数第k个结点

    本文转自:程序员面试题6--查找链表中倒数第k个结点 题目:输入一个单向链表,输出该链表中倒数第k个结点.链表的倒数第0个结点为链表的尾指针.链表结点定义如下: struct ListNode { i ...

  4. 单链表输出倒数第k个结点值(栈实现)

    思路1:定义两个指针变量p和q,初始时均指向头节点的下一个节点(链表的第一个节点),p指针沿链表移动: 当p指针移动到第k个节点时,q指针开始与p指针同步移动, 当p指针移动到最后一个节点时,q指针所 ...

  5. 删除单链表的倒数第k个结点

    策略 直接遍历总数为len,再次遍历第len-k+1个就是答案,但是这样遍历了O(N+k)个,可以在O在更短的时间内找到 图示 参考代码 #include <iostream> using ...

  6. 查找单链表中倒数第K个位置上的结点,若查找成功返回该节点的data域,若不成功只返回0

    算法的基本设计思想:定义两个指针变量p和q  初始时均指向头结点的下一个结点(即链表的第一个结点)p沿链表移动,当p移动到第k个结点时,q指针开始与p指针同时移动,当p指针移动到最后一个结点时,q指针 ...

  7. C++获取单链表的倒数第k个节点

    /* struct ListNode { int val; struct ListNode *next; ListNode(int x) : val(x), next(NULL) { } };*/ c ...

  8. 面试题-----求单链表的倒数第k个节点

    #include <iostream> using namespace std; struct node{ int value; struct node *next; }; struct ...

  9. 以K个为一组反转单链表,最后不足K个节点的部分也反转

    package StackMin.ReverseList_offer16; public class ReverseKgroup_extend_offer16 { /** * 分组反转单链表,最后不足 ...

随机推荐

  1. App_Offline.htm 功能

    在ASP.NET 2.0 站点根目录下,只要存在 App_Offline.htm 文件,那么所有对.aspx的请求都将转向App_Offline.htm .而且浏览器的地址栏显示的是所请求的.aspx ...

  2. ios获取CELLID,LAC等信息方法

    搞了一个来月的这个东西了,还是没有完全解决问题,下面方法可以获取简单的Cell信息,方法一://CoreTelephony.h//主要就这两个结构体,其他需要的话,自己添加struct CTServe ...

  3. SQL阻塞原因造成系统多功能无响应的分析解决思路

    最近遇到一个sqlserver项目,月底会出现多个财务相关功能出现不定期操作无响应问题 通过查询SQL阻塞信息,定位到阻塞源头spid.该会话的状态.等待事件及执行的SQL脚本 根据spid查询该会话 ...

  4. java Util

    import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.qihangedu.tms.a ...

  5. Python招聘需求与技能体系

    目前国内的招聘Python,基本都是偏向web后台开发,偶有高大上的数据挖掘&机器学习. 这是之前(2012年)找工作整理的一些JD,在梳理几年来的笔记,顺带理一理 可以以此建立自己的技能体系 ...

  6. 34. Convert Sorted List to Binary Search Tree && Convert Sorted Array to Binary Search Tree

    Convert Sorted List to Binary Search Tree OJ: https://oj.leetcode.com/problems/convert-sorted-list-t ...

  7. 一、Maya API简介

    #include <maya/MSimple.h> #include <maya/MIOStream.h> DeclareSimpleCommand( hello, " ...

  8. out参数,ref参数,params参数数组

    params参数数组 params关键字可以为方法指定数目可变的参数.params关键字修饰的参数,可以传入任意数目的同类型参数,甚至可以不传入参数. 不过params修饰的参数必须是方法的最后一个参 ...

  9. 如何用js刷新aspxgridviw

    //写在js中 ASPxGridView1.Refresh();

  10. AngularJS图片上传功能的实现

    一.前言 前一段时间做项目时,遇到一个问题就是AngularJS实现图片预览和上传的功能,当时查阅文档(都是英文文档)折腾了很久才弄出来,现将整个流程整理出来,有需要的朋友可以参考一下,如果您有更好的 ...