#include"iostream" #include"stdio.h" using namespace std; int* ArrayMerge(int *a,int aLen,int *b,int bLen) { ,bIndex=bLen-,newIndex=aLen+bLen-; &&bIndex>=) { if(a[aIndex]>b[bIndex]) { a[newIndex--]=a[aIndex--]; } else { a…
题目描述 将两个有序链表合并为一个新的有序链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 示例: 输入:1->2->4, 1->3->4 输出:1->1->2->3->4->4 思路 有两种方法,一个不用递归,另一个用递归 解题 一.不用递归的解法 class ListNode: def __init__(self, x): self.val = x self.next = None class Solution: def mergeTw…
// 面试题25:合并两个排序的链表 // 题目:输入两个递增排序的链表,合并这两个链表并使新链表中的结点仍然是按 // 照递增排序的.例如输入图3.11中的链表1和链表2,则合并之后的升序链表如链 // 表3所示. #include <iostream> #include "List.h" ListNode* Merge(ListNode* pHead1, ListNode* pHead2) { if (pHead1 == nullptr)//鲁棒一:若为空节点直接返回另…
0.简介       本文是牛客网<剑指offer>刷题笔记. 1.题目       在O(1)时间内删除链表节点. 2.思路         前提条件:删除的节点在链表上:边界条件:链表不为空和节点不为空:删除非尾节点i:删除节点i的下一个节点j的内容复制到节点i,然后节点i的指针指向节点j的下一个节点,删除节点j:删除尾节点i:顺序遍历得到被删节点的前序节点,然后删除被删除节点,前序节点指向nullptr. 3.code void DeleteNode(ListNode** pListHe…
题目描述: 统计一个数字在排序数组中出现的次数. 输入: 每个测试案例包括两行: 第一行有1个整数n,表示数组的大小.1<=n <= 10^6. 第二行有n个整数,表示数组元素,每个元素均为int. 第三行有1个整数m,表示接下来有m次查询.1<=m<=10^3. 下面有m行,每行有一个整数k,表示要查询的数. 输出: 对应每个测试案例,有m行输出,每行1整数,表示数组中该数字出现的次数. 样例输入: 8 1 2 3 3 3 3 4 5 1 3 样例输出: 4 [解题思路]本题很容…
题目描述: 输入两个链表,找出它们的第一个公共结点. 输入: 输入可能包含多个测试样例. 对于每个测试案例,输入的第一行为两个整数m和n(1<=m,n<=1000):代表将要输入的两个链表的元素的个数. 接下来的两行,第一行为第一个链表的所有元素,中间用空格隔开.第二行为第二个链表的所有元素,中间用空格隔开. 输出: 对应每个测试案例, 输出两个链表的第一个公共结点的值. 如果两个链表没有公共结点,则输出"My God". 样例输入: 5 4 1 2 3 6 7 4 5 6…
题目:用两个栈来实现一个队列,完成队列的Push和Pop操作. 队列中的元素为int类型. 思路: # 栈A用来作入队列# 栈B用来出队列,当栈B为空时,栈A全部出栈到栈B,栈B再出栈(即出队列) var stack1 = []; var stack2 = []; function push(node) { stack1.push(node); } function pop() { if(stack2.length==0){ if(stack1.length==0){ return null;…
题干:用两个栈实现一个队列,完成队列的push和pop操作,队列中的元素是int型 思路:首先我初始化两个栈,一个栈往里面添加数据,如果这个栈中不为空就弹出数据压入到第二个栈中,弹出第二个栈中的数据 package demo5; import java.util.Stack; public class Main { static Stack stack1 = new Stack(); static Stack stack2 = new Stack(); public static void ma…
错误代码: class Solution { public: vector<int> printListFromTailToHead(ListNode* head){ vector<int> list; if(head != NULL){ if(head->next != NULL){ printListFromTailToHead(head->next); } else{ list.push_back(head->val); } } return list; }…
WA了一次,错误数据4,输出8,怎么真么熟悉呢?改个return过了,OMG ---------------------------------------------------------------------------------------- 时间限制:1秒 空间限制:32768K 热度指数:290829 题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级.求该青蛙跳上一个n级的台阶总共有多少种跳法. class Solution { public: int…