算法 第一次

快速幂算法——求a^b % p的一种快速方法

先想暴力怎么求解 可以循环b次,每次从而求出a^b % p,时间复杂度为O(b),而这里的b是很大的,达到了2 * 10 ^ 9数量级,所以这么做会TLE 1 #include <iostream> 2 using namespace std; 3 int main() { 4 int a, b, ......
算法 方法

算法、一个数组中有10个数字,把这组数数据分在div上,每个div上最多只能有4个数字,用for循环怎么实现

来自chartGPT的写法: const arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; const divNum = 4; // 每个div上最多只能有4个数字 for (let i = 0; i < arr.length; i += divNum) { const ......
数字 数组 算法 div 数据

基础算法-快速排序

思路 快速排序是一种常见的排序算法,它的基本思路是通过分治的方法将一个大的问题分解成小的问题进行解决。具体而言,快速排序的核心思路是选取一个枢轴元素,将序列分为两个子序列,其中一个子序列的所有元素都比枢轴元素小,而另一个子序列的所有元素都比枢轴元素大,然后对这两个子序列分别进行递归排序,直到子序列的 ......
算法 基础

基础算法-堆排序

思路 堆是一种完全二叉树,其中每个节点的值都大于或等于其子节点的值,被称为“大根堆”;或者每个节点的值都小于或等于其子节点的值,被称为“小根堆”。在堆排序中,我们使用的是大根堆,即根节点的值是最大的元素。 堆排序的基本思路是: 建立一个大根堆。将待排序的序列构建成一个大根堆,即所有非叶子节点的值都大 ......
算法 基础

基本算法-基数排序

思想 当我们需要对一组数据进行排序时,常规的排序算法(如快速排序、归并排序等)通常是比较排序,即通过比较元素之间的大小关系来进行排序。但有时候我们需要对一组数据按照它们的“数字位”进行排序,此时比较排序并不是最优的选择,这时候基数排序就显得非常有效了。 基数排序是一种非比较排序算法,它根据元素的每个 ......
基数 算法

【ZeroMQ】zguide 第一章 部分翻译

为了更好的阅读体验,请点击这里 本文大部分内容翻译自 Chapter 1 - Basics,原因是之前翻译的版本太老了,不得不亲自披挂上阵~~拿机器翻译一下~~。只截取了部分自己可能用得到的,所以如果有看不太懂的地方,去翻一下原网页吧。QWQ 附赠 libzmq 的 api 接口函数说明 一份。 一 ......
部分 ZeroMQ zguide

基于RL(Q-Learning)的迷宫寻路算法

强化学习是一种机器学习方法,旨在通过智能体在与环境交互的过程中不断优化其行动策略来实现特定目标。与其他机器学习方法不同,强化学习涉及到智能体对环境的观测、选择行动并接收奖励或惩罚。因此,强化学习适用于那些需要自主决策的复杂问题,比如游戏、机器人控制、自动驾驶等。强化学习可以分为基于价值的方法和基于策 ......
迷宫 算法 Q-Learning Learning RL

Redis 为何使用Nearly LRU 算法淘汰数据

Redis 使用该 LRU 算法淘汰过期数据吗?不是的。 由于 LRU 算法需要用链表管理所有的数据,会造成大量额外的空间消耗。 大量的节点被访问就会带来频繁的链表节点移动操作,从而降低了 Redis 性能。 Redis的内存空间是很宝贵的,而维护LRU的双向链表需要使用比较多的额外空间,至少需要一 ......
算法 数据 Nearly Redis LRU

C++写算法常用函数

title: C++写算法常用函数 字符串转数字 int num = stoi(s); 数字转字符串 string s = to_string(num); 字符串末尾添加字符 s.push_back('a'); 字符串末尾添加字符串 s.append("asd"); 字符串读取 1、用cin读取 s ......
算法 函数 常用

JVM垃圾回收机制之对象回收算法

在前面的文章中,介绍了JVM内存模型分为:堆区、虚拟机栈、方法区、本地方法区和程序计数器,其中堆区是JVM中最大的一块内存区域,在Java中的所有对象实例都保存在此区域,它能被所有线程共享。 在Java中还有一个重要的机制:GC(垃圾收集器),堆是GC管理的主要区域,本文会带大家了解GC机制。 GC ......
算法 机制 对象 垃圾 JVM

Python用哈希算法查找相似图片(包括不同分辨率,不同大小,不同格式的图片)

# -*- coding: utf-8 -*- ''' Python用哈希算法查找相似图片并放入[_df]的文件夹中 相似图片包括不同分辨率,不同大小,不同格式,只要图片相似就会算重复文件 安装cv2 pip install opencv-python ''' import os import cv ......
图片 算法 分辨率 大小 格式

python学习笔记(输出函数print/第一篇/2023年4月21日)

#输出内容到控制台#打印字符串,用单引号、双引号或者三引号包裹要打印的内容print('HelloWorld')print(4+1)#输出内容到文件,"a+"表示如果没有这个文件就创建文件fp = open("D:/test.txt","a+")print('HelloWorld!',file = ......
函数 笔记 python print 2023

记一次从JS到内网的横向案例

前言前段时间参加了一场攻防演练,使用常规漏洞尝试未果后,想到不少师傅分享过从JS中寻找突破的文章,于是硬着头皮刚起了JS,最终打开了内网入口获取了靶标权限和个人信息。在此分享一下过程。声明:本次演练中,所有测试设备均由主办方提供,所有流量均有留档可审计,所有操作均在授权下完成,所有数据在结束后均已安 ......
横向 案例

从原理聊JVM(一):染色标记和垃圾回收算法

本篇介绍了JVM中垃圾回收器相关的基础知识,后续会深入介绍CMS、G1、ZGC等不同垃圾收集器的运作流程和原理,欢迎关注。 ......
算法 标记 原理 垃圾 JVM

记一次jedis连接池顽固问题排查与修改

这辈子不想再看到jedisBrokenPipe!! 测试环境运行16天后报错信息: 05:42:32.629 [http-nio-8093-exec-2] ERROR o.a.c.c.C.[.[.[.[dispatcherServlet] - [log,175] - Servlet.service( ......
问题 jedis

记一次手动将OpenSSH从7.4升级到9.3的过程

前言 收到通知说服务器组件存在漏洞 服务器版本:CentOS 7.9.2009 x86_64 目前SSH版本:OpenSSH_7.4p1, OpenSSL 1.0.2k-fips 26 Jan 2017 使用yum升级yum update -y openssh 最新版本还是:OpenSSH_7.4p ......
手动 过程 OpenSSH 7.4 9.3

Diffie-Hellman密钥交换算法

隐私计算常用到各种加密算法,那么双方如何协商得到同一个不被泄露的密钥呢? 一种做法是基于RSA,拥有公钥的一方将随机私钥加密提供给对方,对方再利用私钥解密出密钥。于是双方都得到了会话密钥。 本篇是另一种密钥交换算法,可以保证“通讯双方在完全没有对方任何预先信息的条件下通过不安全信道创建起一个密钥”:... ......
密钥 Diffie-Hellman 算法 Hellman Diffie

算法题目

-- coding: utf-8 -- """ Created on Wed Jun 1 15:34:00 2022 @author: guess who i am """ 说明: 1 本文共一百八九十道题,涵盖了截止2022.6.30我在网上所见到的所有题,真正的最全题库,只有答案没有题目。 ht ......
算法 题目

牛顿迭代法求方程根(递归算法)

#include<iostream>#include<cmath>using namespace std;double f_origianal(double a, double b, double c, double d, double newx){ return a * pow(newx, 3) ......
迭代法 方程 算法

护士排班——线性规划算法的实现

一、问题描述 护士排班问题是指在医院中,如何合理地安排护士的工作时间,以满足患者的需求,同时保证护士的工作质量和生活质量。该问题通常涉及到多个护士、多个班次和多个工作日,需要考虑护士的工作时间、休息时间、轮班时间等因素。 二、线性规划模型 为了解决护士排班问题,可以采用线性规划模型。假设有 n 个护 ......
线性 算法 护士

逆向工程权威指南-第一章

第一章 CPU简介 CPU是执行程序机器码的硬件单元。简要的说,其相关概念主要有以下几项 指令码 CPU受理的底层命令。典型的底层命令有:将数据在寄存器间转移、操作内存、计算运算等指令。每类CPU都有自己的指令集架构(Instruction Set Architecture, ISA) 机器码 发送 ......
逆向工程 权威 指南 工程

几何算法

C++常用计算几何算法 - 小四的海市蜃楼 - C++博客 (cppblog.com) (59条消息) C++常用计算几何算法_计算几何常用算法 c++_Belial_2010的博客-CSDN博客 ......
几何 算法

4-算法

常见的七种查找算法: 1. 基本查找 ​ 也叫做顺序查找 说明:顺序查找适合于存储结构为数组或者链表。 基本思想:顺序查找也称为线形查找,属于无序查找算法。从数据结构线的一端开始,顺序扫描,依次将遍历到的结点与要查找的值相比较,若相等则表示查找成功;若遍历结束仍没有找到相同的,表示查找失败。 示例代 ......
算法

SQL JOIN的常见连接算法(转载)

原文:https://zhuanlan.zhihu.com/p/495442432 在数据库和大数据领域,通过SQL中的JOIN连接将两个及两个以上的表(或中间表、视图、物化视图)中的数据 按指定的连接条件关联起来,是很常用也很方便的操作。 我们前面学习了JOIN有多种常见连接方式如内连接INNER ......
算法 常见 JOIN SQL

C#中使用CAS实现无锁算法

CAS 的基本概念 CAS(Compare-and-Swap)是一种多线程并发编程中常用的原子操作,用于实现多线程间的同步和互斥访问。 它操作通常包含三个参数:一个内存地址(通常是一个共享变量的地址)、期望的旧值和新值。 CompareAndSwap(内存地址,期望的旧值,新值) CAS 操作会比较 ......
算法 CAS

智能简历解析系统第一次讨论

智能简历解析系统第一次讨论_哔哩哔哩_bilibili ......
第一次 简历 智能 系统

团队冲刺第一天

由我,齐文博,刘青岗组成的团队 完成了公司界面的绝大部分 <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title></head><body><div id="app"> <el-form ref ......
团队

快速排序以及快速排序常用的三种算法

快速排序相比其他极大排序在效率和空间复杂度上都算是比较优得。并且在进行了三数取中优化以后,除了及其小的情况外,基本能保持logn的时间复杂度。 三数取中法;在一堆数据中随机取三个数,然后取其中间大小的数。 有了三数取中的基础以后,快速排序的key就可以用三数取中来完成了。 1:快速排序有三种常用的方 ......
算法 常用

QuHai互联科技 算法题部分

11、实现计算第n个斐波那契数 12、给定一个字符串编码规则,如输入字符串”Y3E12S!3”,字母后面的数字表示该字符重复几次,如果字符后没有数字则表示一个字符,最终输出转码后的字符串’YYYEEEEEEEEEEEES!!!’。试写出转码的函数,编程语言不限。 13、简述你所了解的两种或以上排序算 ......
算法 部分 QuHai 科技

扎实打牢数据结构算法根基,从此不怕算法面试系列之week01 02-09 测试算法时间复杂度性能的方式方法

#1、数组生成器 测试算法性能肯定不能自己手动声明创建数组了,在现代计算机上,对于O(n)级别的算法,都需要10W级别以上的数据才能看到性能,我们肯定不能手动声明10W个元素的数组吧? 所以,创建数组生成器。 这里,自己创建一个数组生成器——ArrayGenerator。 package com.m ......
算法 复杂度 数据结构 根基 性能