LeetCode——2.Add Two Numbers

题目 You are given two non-empty linked lists representing two non-negative integers. The digits are stored in reverse order and each of their nodes c...

2018-08-22 19:46:30

阅读数 42

评论数 0

剑指offer——二维数组中的查找

题目描述 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 思路 从右上角开始遍历。大了,向左移动一下,小了,向下移动一下。 java实现 p...

2018-08-21 21:52:19

阅读数 44

评论数 0

天池大赛-用户在商场中的定位

赛题回顾 这是一个室内定位问题。给定交易时的环境信息(包括GPS,wifi信息),确定交易所处的商铺。详情可参见比赛页面。 knn方案概述 针对测试集中的每一条记录,构造候选shop集合,用模型输出每个候选的概率值,然后选取概率值最大的作为该条记录的预测shop,即二分类。训练集和测试集的构...

2018-08-17 19:03:34

阅读数 241

评论数 8

剑指offer——反转链表

题目输入一个链表,反转链表后,输出链表的所有元素。思路先判断是否为空,是返回 否的话,先将第一个的next存起来,再将它指向null,使它变成末尾。 再通过循环实现反转c++实现/* struct ListNode { int val; struct ListNode *nex...

2018-01-14 13:22:22

阅读数 34

评论数 0

剑指offer——链表中倒数第k个节点

题目输入一个链表,输出该链表中倒数第k个结点。思路先用一个指针指到k-1,再让另一个指针从头开始和第一个指针一起跑。当第一个知道末尾,第二个刚好指到第k个c++实现/* struct ListNode { int val; struct ListNode *next; Li...

2018-01-12 23:26:38

阅读数 22

评论数 0

剑指offer——调整数组顺序使奇数位于偶数前面

题目输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。思路先存入奇数,后存入偶数,重新赋给arrayc++实现class Solution { public: void...

2018-01-12 00:17:18

阅读数 30

评论数 0

剑指offer——数值的整数次方

题目给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。思路base是否等零:等零:返回0 不等零:根据exponent是否大于0:大等于0,用pow()实现 小于零:传入-exponent,返回倒数。c++实现class Soluti...

2018-01-11 23:40:25

阅读数 36

评论数 0

剑指offer——二进制中1的个数

题目输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。知识补充原码:原码就是符号位加上真值的绝对值, 即用第一位表示符号, 其余位表示值 [+1]原 = 0000 0001 [-1]原 = 1000 0001 反码:正数的反码是其本身。负数的反码是在其原码的基础上, 符号位不变...

2018-01-11 12:39:55

阅读数 24

评论数 0

剑指offer——矩形覆盖

题目我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?思路f(n) = f(n-1) + f(n-2)c++实现class Solution { public: int rectCover(int number)...

2018-01-09 23:30:24

阅读数 25

评论数 0

剑指offer——变态台阶数

题目一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。思路f(1) = 1 f(2) = f(2-1) + f(2-2) f(3) = f(3-1) + f(3-2) + f(3-3) … f(n-1) =f(n-2) + f(...

2018-01-09 23:06:23

阅读数 23

评论数 0

剑指offer——跳台阶

题目** 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。思路** 判断是否为0,1,2,分别输出0,1,2。如果大于二,则用递归分别计算n-1和n-2的值。**c++实现**class Solution { public: int jumpF...

2018-01-09 18:28:13

阅读数 101

评论数 0

剑指offer——斐波那契数列

题目大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项。 n<=39思路将斐波那契数列的表达式实现以下就好。 n = 0 时,为0 n = 1 时,为1 n > = 2时,为前面两个数的和。C++实现class Solution { p...

2018-01-07 23:55:15

阅读数 38

评论数 0

剑指offer——旋转数组的最小数字

题目把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。思路判断长度是否...

2018-01-06 12:45:08

阅读数 31

评论数 0

剑指offer——用两个栈实现队列

题目用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。思路将stack2 作为最终“队列”。 push:先将数据放到stack1,然后,在stack1上添加新的node,再倒回stack2。 pop:将最上面的数值保存下来,再从stack2上pop出去。返回保...

2018-01-05 20:02:20

阅读数 34

评论数 0

剑指offer——重建二叉树

题目输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。知识准备四种主要遍历为: 前序遍历:根结点 —&...

2018-01-05 19:33:05

阅读数 61

评论数 0

剑指offer——从尾到头打印链表

题目输入一个链表,从尾到头打印链表每个节点的值。思路先输入到栈,利用栈的先入后出特点,实现反输出。c++实现/** * struct ListNode { * int val; * struct ListNode *next; * ListNode(in...

2018-01-05 00:22:46

阅读数 26

评论数 0

剑指offer——替换空格

题目请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。思路先查看有多少个空格,扩大字符串长度,从后往前重写。java实现public class Solution { public St...

2018-01-04 00:21:41

阅读数 26

评论数 0

提示
确定要删除当前文章?
取消 删除