ICode9

精准搜索请尝试: 精确搜索
  • 904. 水果成篮2021-10-14 08:32:38

    题目:https://leetcode-cn.com/problems/fruit-into-baskets/ 主要使用滑动窗口方法 我的答案(参考“胖球”的题解:https://leetcode-cn.com/u/chun-hua-qiu-shi-2/) C++版本: int totalFruit(vector<int>& fruits) { if (fruits.size() == 0) return 0; int result = -1;

  • 【Luogu 1546】最短网络2021-10-11 21:02:15

    https://www.luogu.com.cn/problem/P1546 分析 模板题。 #include <bits/stdc++.h> #define P pair<int, int> #define PI pair<int, P> //路径长度,路径端点 using namespace std; int n,a[105][105],fa[105],ans=0; vector<PI> V; int find(int n) { return

  • [Go] 解决packets.go:36: read tcp 127.0.0.1:51139->127.0.0.1:3306: wsarecv: An established connectio2021-10-10 12:33:32

    这是因为数据库的超时时间比较短,连接被mysql服务关闭了 程序还在使用旧连接查询数据库 比如gorm 我们程序里设置下时间旧可以了,时间比超时时间短一些 DB.DB().SetConnMaxLifetime(59 * time.Second) DB, err = gorm.Open("mysql", dsn) if err != nil { log.Prin

  • 算法刷题计划二----无主题随机刷题16(leetCode)2021-10-09 23:58:56

    17.10. 主要元素 数组中占比超过一半的元素称之为主要元素。给你一个 整数 数组,找出其中的主要元素。若没有,返回 -1 。请设计时间复杂度为 O(N) 、空间复杂度为 O(1) 的解决方案。 示例 1: 输入:[1,2,5,9,5,9,5,5,5] 输出:5 示例 2: 输入:[3,2] 输出:-1 示例 3: 输入:[2,2,1,1,1,2,2]

  • 链表反转,C++描述2021-10-07 11:05:34

    链表反转还是很绕的,对于C++,则纯粹是在玩弄指针,弄清指针和内存的关系很重要。在左侧的是指针,在右侧的是内存。 template <typename T> struct ListStack; template <typename T> struct Node { private: T item; Node *next = nullptr; friend class ListStack<T

  • 15. 三数之和2021-10-05 22:02:16

    15. 三数之和 给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有和为 0 且不重复的三元组。 注意:答案中不可以包含重复的三元组。 示例 1: 输入:nums = [-1,0,1,2,-1,-4] 输出:[[-1,-1,2],[-1,0,1]] 示例 2: 输入:nums = [] 输出:[]

  • 1026 程序运行时间2021-10-04 09:30:07

    要获得一个 C 语言程序的运行时间,常用的方法是调用头文件 time.h,其中提供了 clock() 函数,可以捕捉从程序开始运行到 clock() 被调用时所耗费的时间。这个时间单位是 clock tick,即“时钟打点”。同时还有一个常数 CLK_TCK,给出了机器时钟每秒所走的时钟打点数。于是为了获得一

  • 图论最短路及生成树(Prim,Djikstra,Spfa,Bellan-ford,kruskal,topsort)2021-10-03 17:33:45

    图论在算法中具有举足轻重的地位,只有学好图才能游刃有余。本文章将介绍图论中一些基础算法,可以说总结的十分全面,文章结尾也会分析各算法的差异,清晰易懂。并附上代码模板. 图论(最短路、生成树) 一、拓扑排序二、Djikstra算法1. 朴素算法2. 优先队列优化 三、Bellan-ford算

  • 保姆级《Python编程——从入门到实践》第三章学习笔记(上)分享啦!!!2021-10-02 15:30:52

    目录 列表是什么? 列表的定义 列表的写法 访问列表元素 索引从0而不是从1 开始 提取并使用列表中的某个值 修改、增加、删除列表中的元素 修改列表元素 增加列表元素 在列表的末尾增加元素 在任意位置增加元素 删除列表元素 通过del 删除列表元素 通过pop()的方法删除元素 通过re

  • 斯坦纳树2021-09-30 09:34:57

    斯坦纳树 定义: 最小斯坦纳树,就是花费最少的代价,联通给定的 \(k\) 个关键点。 感觉有点像迪杰斯特拉,但是又不太一样。 引入: 用一道例题引入: [模板] 最小斯坦纳树 参考:ix35题解 这个问题可以用 状压 \(DP\) 来解决,发现一个结论: 答案的子图一定是树 证明:如果答案存在环,则删去环上任意

  • Codeforces Round #744 (Div. 3)2021-09-30 08:31:06

    A. Casimir's String Solitaire 思路: 分别记录字母A, B, C的数量,显然要满足B的数量等于A的数量和C的数量的和才行 #include <iostream> #include <cstring> #include <algorithm> #include <cmath> #include <queue> #define x first #define y second using namesp

  • 16.LeetCode 最接近的三个数之和2021-09-29 15:33:16

    与上一道题及其相似 也没什么好办法 public int threeSumClosest1(int[] nums, int target) { Arrays.sort(nums); int len = nums.length; int sum = 0; int max = Integer.MAX_VALUE; for (int first = 0; first < len; first++) {

  • LeetCode刷题笔记第19题:删除链表的倒数第 N 个结点2021-09-29 14:34:45

    LeetCode刷题笔记第19题:删除链表的倒数第 N 个结点 想法: 要想删除链表中倒数第N个结点,首先要找到此结点,通过链表删除结点的操作删除结点。设置两个指针,第一个指针找到第N个结点的位置,第二个结点在初始位置,然后将两个指针同时向后移动,当第一个指针遍历链表结束时,第二个指针刚

  • 自定义进度条2021-09-28 22:33:05

    1.自定义的进度条,拿去用 # 自己写一个进度条 import time def progress(count,counts,length=50,key="█",second=0.1): """ :param count: 已完成的值 :param counts: 总量 :param length: 默认字符串长度 :param key: 进度条字符 :param second: 刷

  • ES5 继承,js 原型与原型链的学习2021-09-28 19:59:24

    <script> // ES5 继承方案 function A(a,b) { this.a = a this.b = b } A.prototype.fun = function() { console.log(this.a,this.b) } // 采用混合继承的方式 function B(a,b) { A.call(this,a,b) } B.prot

  • 347. 前 K 个高频元素2021-09-28 13:31:34

    要求:返回前k个高频元素,时间不超O(nlogn),注意是指k个不同的数而不是k个频率 思路: 法一:首先记录次数数组,由于时间限制不能排序,故对该数组用小顶堆,初始化堆O(klogk),调整O(n-k)(logk),空间O(n) class Solution { public: struct cmp{ bool operator()(pair<int,int> &a,p

  • 740. [C++]删除并获得点数2021-09-28 12:32:13

    题目描述 给你一个整数数组 nums ,你可以对它进行一些操作。 每次操作中,选择任意一个 nums[i] ,删除它并获得 nums[i] 的点数。之后,你必须删除 所有 等于 nums[i] - 1 和 nums[i] + 1 的元素。 开始你拥有 0 个点数。返回你能通过这些操作获得的最大点数。 示例 1: 输入:nums = [

  • 14.LeetCode 三个数和2021-09-28 12:02:03

    这道题 解法是暴力的优化  想清楚 第一个数怎么求 然后第二 第三个数怎么求 为什么先排序呢 因为排序能有可能判断是否重复 简单的优化减少了一毫秒的运算时间 public List<List<Integer>> threedNums(int[] nums) { Arrays.sort(nums); // 先排序 List<List

  • 力扣题15三数之和2021-09-26 11:03:36

    给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有和为 0 且不重复的三元组。 注意:答案中不可以包含重复的三元组。 示例 1: 输入:nums = [-1,0,1,2,-1,-4] 输出:[[-1,-1,2],[-1,0,1]] 示例 2: 输入:nums = [] 输出:[] 示例 3:

  • 031倒计时工具2021-09-25 12:32:17

    一、 cat countDown.py #! /usr/bin/env python3.8.5 # -*- coding: utf-8 -*- import time import tkinter.messagebox def countdown(m): try: m = int(m) except ValueError: print("Must be an integer!") else: while True

  • L3-008 喊山(bfs)2021-09-22 17:03:44

    题目链接 思路: 开始太冲动直接写了个dfs发现不对,当一个地方发声则与该地点有边的点必定能听到了,直接dfs的话最远长度可能会变大,所以要用dfs一层一层标记完,当某个点的可达点都被标记完不能再向下标记时,该点就是此时最远的点,最远的点可能有好几个要比较保留最长的,长度相同则保

  • python图像读取速度2021-09-22 16:00:50

    1.我们首先来看一下opencv的读取效率: # 加载时间函数用于计算效率 import time # opencv import cv2 N = 1000 tic = time.time() for i in range(N): img = cv2.imread('../data/train/cat.123.jpg') img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) print(N/(time.time()

  • python判断 射线是否与圆相交2021-09-21 17:34:44

    python判断 射线是否与圆相交 # 以上是返回截距式方程的y=kx+b的k和b def GeneralEquation(first_x,first_y,second_x,second_y): A = second_y-first_y B = first_x-second_x C = second_x*first_y-first_x*second_y k = -1 * A / B b = -1 * C / B re

  • C++中的 map进行遍历(也包括unordered_map 的遍历方法)2021-09-21 15:05:23

    使用的是map里面的 first 方法和second 方法。 first 方法得到的是map 中的key, second方法得到的是map中的value; for(auto iter = mp.begin(); iter != mp.end(); iter++){ if(iter->second > nums.size()/2) // second 方法得到的是map 中的value {

  • 9.20日2021-09-20 20:34:05

    提示框的形式将两数相加,老师给的代码。import javax.swing.JOptionPane; // import class JOptionPanepublic class Addition { public static void main( String args[] ) { String firstNumber, // first string entered by user secondNumber; // se

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有