ICode9

精准搜索请尝试: 精确搜索
  • 排序--简单排序2021-06-13 13:32:24

    一、冒泡排序 原理:从第一个元素开始遍历比较,如果相邻元素大于它,就做一次交换,冒泡完成的元素不参与下一次比较,由此可见越往后的元素需要比较的次数递减,for循环可实现。 源代码: void bubble_sort(int *array, int size_array) {     for(int j = size_array ; j >= 

  • 肺活量,源码512021-06-13 11:01:16

    晶振频率 22.1184MHz #include"reg52.h" #define open 0x3f #define close 0x3e #define row 0xc0 #define page 0xb8 #define line 0x40 #define OUT P1 sbit RESET=P3^4; sbit CS1=P3^2; sbit CS2=P3^3; sbit E=P3^7; sbit R_W=P3^5; sbit D_I=P3^6; sbit AD_

  • leetcode——整数反转2021-06-13 10:32:44

    思想 判断溢出方式:看 res 是否大于 最大值/10,如果等于,判断后面那个数是否大于7(计算的最大数的个位数) 看 res 是否小于 最小值/10,如果等于,判断后面那个数是否小于8(计算的最小数的个位数) function resvese(num){ let res = 0; const MAX_VALUE = parseInt(Math.pow(2,

  • 实现了对单链表的反转2021-06-13 09:58:53

    package data; /** * @author Babulakaka * @create 2021-06-13 9:09 */ public class Reversion3{ public static void main(String[] args) { SingleLinkedList singleLinkedList = new SingleLinkedList(); singleLinkedList.addNode("q&qu

  • 2021-06-122021-06-12 23:58:39

    1049 数列的片段和 (20 分) 给定一个正数数列,我们可以从中截取任意的连续的几个数,称为片段。例如,给定数列 { 0.1, 0.2, 0.3, 0.4 },我们有 (0.1) (0.1, 0.2) (0.1, 0.2, 0.3) (0.1, 0.2, 0.3, 0.4) (0.2) (0.2, 0.3)(0.2, 0.3, 0.4) (0.3) (0.3, 0.4) (0.4) 这 10 个片段。

  • LeetCode - 解题笔记 - 66 -Plus One2021-06-12 23:32:12

    Solution 1 这个题主要是考察加法逻辑和数据结构操作,没有什么难度,就是额外注意一下最后一次加法(头部位置)如果有进位需要额外增加一个元素。为了不增加额外的空间占用,我使用了一种很拧巴的方法实现了vector的头部插入。 时间复杂度: O

  • 2021-06-122021-06-12 22:32:29

    不想学习时怎么办01 今天因为昨晚没有睡好。 再加上最近的运动量有些大,感觉身体有些疲惫,心情也不是很好。 所以不是很想学习,但是又不想荒废时间,于是我就在是浪费时间呢还是去强迫自己去学习这两个方案之间变得很矛盾。 但最后我去学习了,并且很开心地学习了。 记录一下这一次

  • 18. 四数之和2021-06-12 21:00:52

    给定一个包含 n 个整数的数组 nums 和一个目标值 target,判断 nums 中是否存在四个元素 a,b,c 和 d ,使得 a + b + c + d 的值与 target 相等?找出所有满足条件且不重复的四元组。 注意:答案中不可以包含重复的四元组。 示例 1: 输入:nums = [1,0,-1,0,-2,2], target = 0 输出:[[-2,-1

  • 树 —— 广度优先遍历2021-06-12 17:33:47

    数据结构:队列 核心:只要queue中有节点,就删除queue中的第一个节点,把节点值赋值给res,并判断这个节点是否有左右节点,有就依次放入queue中。循环直至queue中没值。 var levelOrder = function (root){ let res = [] let queue = [] root && queue.push(root) whil

  • 8. 移动零2021-06-12 17:32:34

    移动零 [原题链接](初级算法 - LeetBook - 力扣(LeetCode)全球极客挚爱的技术成长平台 (leetcode-cn.com)) /** * 给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。 * 必须在原数组上操作,不能拷贝额外的数组。 * 尽量减少操作次数。 */ p

  • 练习题2:添加字典节点2021-06-12 12:05:51

    创造字典并添加字典子节点,附件功能:新增,查看,返回,退出 db = {} path = [] while True: temp = db for tempa in path: temp = temp[tempa] print("当前节点为:", list(temp.keys())) inp1 = input("1:新增节点;2:查看节点;B:返回上一层;Q:退出。\n>>>") i

  • JavaScript 实现 -- 插入排序及优化2021-06-12 11:29:24

    什么是插入排序 先看一下百度百科的定义: 插入排序,一般也被称为直接插入排序。对于少量元素的排序,它是一个有效的算法 [1] 。插入排序是一种最简单的排序方法,它的基本思想是将一个记录插入到已经排好序的有序表中,从而一个新的、记录数增1的有序表。在其实现过程使用双层循环,

  • 连通块2021-06-11 11:08:11

    #include <iostream> #include <deque> #include <string> #include<cstdio> #define MAX 300 using namespace std; struct Point { int x; int y; Point(int _x, int _y) :x(_x), y(_y) {} }; void BFS(int **a, int n, int m, int x, int y,boo

  • 用BFS(广度优先搜索queue&&list)算法解决农夫过河问题2021-06-11 11:05:40

    用BFS(广度优先搜索queue&&list)算法解决农夫过河问题 一、问题需求分析 一个农夫带着一只狼、一只羊和一棵白菜,身处河的南岸。他要把这些东西全部运到北岸。问题是他面前只有一条小船,船小到只能容下他和一件物品,另外只有农夫能撑船。另外,因为狼能吃羊,而羊爱吃白菜,所以农夫不能留

  • 冒泡排序,选择排序,插入排序2021-06-11 10:05:02

    冒泡排序: public class Bubble { public int[] sort(int[] array) { int temp = 0; // 外层循环,它决定一共走几趟 //-1为了防止溢出 for (int i = 0; i < array.length - 1; i++) { int flag = 0; //通过符号位可以减少无谓的比较,如果已经有序了,就退出循环

  • 文件操作2021-06-11 09:05:38

    1 #include <iostream> 2 #include <cstdlib> 3 #include <fstream> 4 using namespace std; 5 6 void bubblesort(int arr[],int n); 7 int main() 8 { 9 fstream f("first.dat",ios::in|ios::out|ios::binary); 10

  • 取二维数组值得和2021-06-10 22:55:09

    public class test { public static void main(String[] args) { int [][] ii = new int[][]{ {1,2,3}, {5,44,3}, {1} }; int res = 0; for (int i = 0; i < ii.length ; i++) { for (int j = 0; j <ii[i].length; j++) { res +=ii[i][j]; } } System.out.println(re

  • 加号运算符重载2021-06-10 19:59:36

    加号运算符重载的作用:实现两个自定义数据类型相加的运算。以下代码是由C++实现两个自定义类型的相加。 方法一:类内实现+号运算符重载(代码如下) #include"iostream" using namespace std; class Person//自定义一个类 { public: //成员函数实现+号运算符重载 Person operator+(

  • 今日头条 2018 AI Camp 6 月 2 日在线笔试编程题第一道——最大连续区间和扩展2021-06-10 13:53:55

    题目 给出一个长度为 n 的数组a1、a2、...、ana1、a2、...、an,请找出在所有连续区间 中,区间和最大同时这个区间 0 的个数小于等于 3 个,输出这个区间和。 输入描述:  第一行一个正整数 n, 表示数组长度,1 <= n <= 1000000。 第二行 n 个正整数,a1a2...ana1a2...an,其中 -1e9 <= a1

  • 深度和广度优先搜索算法2021-06-10 11:07:52

    在社交网络中,有一个六度分割理论,具体是说,世界上任何互不相识的两人,平均只需要六步就能够建立起联系。一个用户的一度连接用户就是他的好友,二度连接用户就是他好友的好友,三度连接用户就是他好友好友的好友。 给定一个用户,如何找出这个用户的所有三度(包括一度、二度和三度)好友关系呢

  • 剑指 Offer——数组中的逆序对2021-06-10 11:02:58

    1. 题目 2. 解答 借助于归并排序的分治思想,在每次合并的时候统计逆序对。因为要合并的两个数组都是有序的,如果左半部分数组当前值大于右半部分数组当前值,那么左半部分数组当前值右边的数就都大于右半部分数组当前值,这些数据对也就构成了逆序数对。 比如上图中 [3, 8, 9, 11] 和

  • java数组08冒泡排序2021-06-10 08:02:33

    package com.Leo.array;import java.util.Arrays;//冒泡排序//1. 比较数组中,两个相邻的元素,如果第一个数比第二个数大,我们就交换他们的位置//2. 每一次比较,都会产生一个最大,或者最小的数子;//3. 下一轮则可以少一次排序!//4. 依次循环,直到结束!public class ArrayDemo07 { publi

  • SQL创建存储过程2021-06-09 17:54:07

    创建存储过程 创建存储过程sppbConvertStringToTable,实现数据的拆分,使以下代码得以正常运行,运行结果如下图 构建测试数据 SELECT uGuid='A',sOrderNO='AAA',sWorkerNo='001,002,003' INTO #TEMP INSERT INTO #TEMP VALUES('B','BBB','002,004')

  • Linux 中 rsync 备份数据使用实例2021-06-09 10:05:18

    rsync工具用于将文件和目录从一个位置同步到另一个位置。同步的位置可以在本地服务器或远程服务器上。 在Centos中使用下面命令安装rsync: [root@localhost ~]# yum -y install rsync   实例一:本机中的两个目录进行同步   要同步本地计算机中的两个目录,使用rsync -zvr命令: [ro

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

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

ICode9版权所有