首页 > TAG信息列表 > offer3

数组-剑指offer3数组中重复的数字-中等-20210807

数组-剑指offer3数组中重复的数字-中等-20210807 1. 题目描述 在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个==高效的函数==,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 示例: [ [1, 4,

剑指Offer3

剑指Offer第三天 都很简单,没什么好说的。。 题1:替换空格 请实现一个函数,把字符串 s 中的每个空格替成"%20"。 s.charAt()比较用==不用equals,因为是转成char类型的 class Solution { public String replaceSpace(String s) { StringBuilder sb = new StringBui

剑指offer3

我的想法先排序,再建立一个哈希表,如果大于1,那就返回 class Solution { public: int findRepeatNumber(vector<int>& nums) { sort(nums.begin(),nums.end()); int last=nums[nums.size()-1]; vector<int> num(last+1); for(int i=0;i<num

剑指offer3-从尾到头打印链表

题目描述 输入一个链表,按链表从尾到头的顺序返回一个ArrayList。 思路:因为涉及到反向,所以我们使用栈。 将链表从头结点开始依次将val数值装入栈中,根据栈的后进先出原则,所以出栈的顺序就是链表从尾到头的顺序。 代码: /** * struct ListNode { * int val; * struct

剑指offer3

输入一个链表,按链表从尾到头的顺序返回一个ArrayList。 方法1 先顺序存入vector,再反向读取vector.back() /** * struct ListNode { * int val; * struct ListNode *next; * ListNode(int x) : * val(x), next(NULL) { * } *

剑指offer3:从尾到头打印链表每个节点的值

1. 题目描述       输入一个链表,从尾到头打印链表每个节点的值。 2. 思路和方法 2.1 推荐的方法       (1)栈,循环       后进先出,我们可以用栈实现这种顺序。没经过一个结点的时候,把该节点放到一个栈里面,当遍历完整个链表后,再从栈顶开始逐个输出结点的值【top pop】,此