码迷,mamicode.com
首页 > 编程语言 > 周排行
算法图解(二)
一、分而治之(divide and conquer,D&C) d&c解决问题的两个步骤: 1.找基线条件(最小单位)or(只剩一个或为空); 2.将问题的规模缩小,不断递归直到基线条件; 利用循环求和: 1 def sum(arr): 2 total = 0 3 for i in arr: 4 to ...
分类:编程语言   时间:2020-04-10 00:18:12    阅读次数:73
C语言错题总结
01:合法的字符常量 常见错误: 01:‘ab’//只能放一个字符 02:‘\482’//八进制没有8 03:‘\xaf’//这是正确的的 带转义字符的: t \r \n都是转义字符,空格就是单纯的空格,输入时可以输入空格 \t 的意思是 横向跳到下一制表符位置 \r 的意思是 回车 \n 的意思是 ...
分类:编程语言   时间:2020-04-10 00:18:35    阅读次数:82
Python学习第47天(递归锁、同步对象、信号量)
今天三个部分的知识、递归锁(解决同步锁造成的锁死现象)、同步对象(类似一个锁,使两个线程之间进行同步)、信号量(控制线程数量的一个锁),悄悄的说一下,算上昨天的同步锁,虽然已经讲了四种锁了,但是据说总共是有五种锁的,最后一个我还不知道是个啥。 一、递归锁 昨天引入了同步锁的概念,但是因为同步锁的引入 ...
分类:编程语言   时间:2020-04-10 00:19:10    阅读次数:59
C语言通过模拟哈希表字符串中的第一个唯一字符
给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。 案例: s = "leetcode"返回 0. s = "loveleetcode",返回 2. 来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/first- ...
分类:编程语言   时间:2020-04-10 00:25:43    阅读次数:86
JAVA基础知识回顾
1.JVM Java虚拟机(JVM)是运行Java字节码的(.class)。-->高效;可移植 Java程序从源代码到运行一般有以下3步: .java文件(源代码) -->(JDK中的javac编译) --> .class文件(JVM可理解的Java字节) --> (JVM) -->机器可执行的二进 ...
分类:编程语言   时间:2020-04-10 00:26:42    阅读次数:80
稀疏 sparsearray 数组探究
今天复习下稀疏数组相关思想。 问题引入:编写的五子棋程序中,有存盘退出和续上盘的功能。 如上图所示二维数组,大多值是默认值(0),所以记录大量无意义的数据意义不大,此时可以引入稀疏数组。 稀疏数组介绍:当一个数组大部分元素为固定值时,可以使用稀疏数组来保存类似数组; 稀疏数组处理思路: 稀疏数组记录 ...
分类:编程语言   时间:2020-04-10 00:30:25    阅读次数:63
C语言程序设计:现代方法第2版习题答案
C语言程序设计:现代方法第2版课后答案 时至今日, C语言仍然是计算机领域的通用语言之一,C语言程序设计:现代方法第2版习题答案但今天的 C语言已经和最初的时候大不相同了。C语言程序设计:现代方法第2版答案本书最主要的一个目的就是通过一种“现代方法”来介绍 C语言,书中强调标准 C,强调软件工程,不 ...
分类:编程语言   时间:2020-04-10 00:32:21    阅读次数:110
python基础语法
1、字符串的常见操作: 2、print的常见操作 print 默认输出是换行的,如果要实现不换行需要在变量末尾加上 end="" print(str1, end = " ") print(str1, end = " ") 输出为: runoob runoob 3、导入操作 将整个模块(somemod ...
分类:编程语言   时间:2020-04-10 00:35:12    阅读次数:87
【LeetCode链表】删除排序链表中的重复元素 II
题目描述 给定一个排序链表,删除所有含有重复数字的节点,只保留原始链表中 没有重复出现 的数字。 示例: 题目链接 :https://leetcode cn.com/problems/remove duplicates from sorted list ii/ 做这题之前,可以先做 "删除排序链表中 ...
分类:编程语言   时间:2020-04-10 00:36:26    阅读次数:74
高级排序算法之希尔排序
前言 希尔排序是对插入排序的改进,引入维基百科的说明: 希尔排序是基于插入排序的以下两点性质而提出改进方法的: 1. 插入排序在对几乎已经排好序的数据操作时,效率高,即可以达到 "线性排序" 的效率 2. 但插入排序一般来说是低效的,因为插入排序每次只能将数据移动一位 原文链接 "希尔排序" ),本 ...
分类:编程语言   时间:2020-04-10 00:37:31    阅读次数:77
排序和数据结构
[TOC] 各种排序算法时间复杂度及空间复杂度对比 Timsort与其他比较排序算法时间复杂度(time complexity)的比较 空间复杂度(space complexities)比较 各种排序算法 同等硬件条件下,对相同长度的的列表排序,所有时常如下: 1.python内置方法sorted( ...
分类:编程语言   时间:2020-04-10 00:38:40    阅读次数:84
高级排序算法之归并排序,快速排序
前言 承接上文 "基础排序算法—冒泡,插入,选择" ,相比之下,归并排序和快速排序更为高效,时间复杂度均为O(nlogn),相比简单排序的O(n^2)好了很多,下面介绍一下这两种算法的思路,实现和主要指标.主要思路来自 正文 归并排序 主要思路 在归并排序采用分冶的思想,使用递归实现.描述如下 1. ...
分类:编程语言   时间:2020-04-10 00:45:46    阅读次数:77
Java 程序运行机制
[TOC] Java 程序运行机制 运行过程 1. 源文件 (a.java) 2. Java 编译器 3. 字节码文件(a.class) 4. 进入 JRE ,分别执行 类装载器 字节码校验器 解释器 5. 系统平台,执行. 注释 JRE 中包含 JVM (JAVA虚拟机); 其中的字节码校验器也是 ...
分类:编程语言   时间:2020-04-10 00:59:13    阅读次数:77
SpringBoot——登录验证码实现
今天记录一下验证码的实现,希望能够帮助到大家! 首先我们看一下实现的效果: 此验证码的实现没有用到太多的插件,话不多说直接上代码,大家拿过去就可以用。 中间用到了org.apache.commons.lang3.RandomUtils工具类,需要pom配置: <!-- https://mvnrepo ...
分类:编程语言   时间:2020-04-10 00:59:55    阅读次数:114
1338.数组大小减半
给你一个整数数组 arr。你可以从中选出一个整数集合,并删除这些整数在数组中的每次出现。 返回 至少 能删除数组中的一半整数的整数集合的最小大小。 `输出:2` `大小为 2 的可行集合有 {3,5},{3,2},{5,2}。` `示例 2:` `输出:1` `示例 3:` 输入:arr = [1, ...
分类:编程语言   时间:2020-04-10 01:03:06    阅读次数:67
java System类
System类中的属性和方法都是静态的。 out:代表标准输出,默认是控制台 in:标准输入,默认键盘 getProperties:获取系统属性信息 java -Dpro=value class 在jvm启动时添加属性 public class Demo { public static void m ...
分类:编程语言   时间:2020-04-10 09:11:21    阅读次数:101
Java异常的捕获和处理(一)
一、异常的捕获和处理 KEY WORDS : try, catch, finally, throw, throws. (一)syntax(代码) try{ //需要运行的代码 }catch(异常类型 异常变量名){ //异常处理代码 }finally{ //异常发生,方法返回之前,需要执行的代码 } ...
分类:编程语言   时间:2020-04-10 09:12:44    阅读次数:102
Java集合容器面试题
什么是集合集合框架:用于存储数据的容器。集合框架是为表示和操作集合而规定的一种统一的标准的体系结构。任何集合框架都包含三大块内容:对外的接口、接口的实现和对集合运算的算法。接口:表示集合的抽象数据类型。接口允许我们操作集合时不必关注具体实现,从而达到“多态”。在面向对象编程语言中,接口通常用来形成规范。实现:集合接口的具体实现,是重用性很高的数据结构。算法:在一个实现了某个集合框架中的接口的对象身
分类:编程语言   时间:2020-04-10 09:13:30    阅读次数:87
MQTT通信协议在Unity中的应用之二—Unity3D C#实现
上一篇讲解了MQTT协议在JS实现,通过和Unity3D交互实现通信,因为对JS不是特别精通,所以讲得比较粗略。这一篇中,介绍Unity3D实现MQTT协议通信,将细致讲解过程MQTT是IBM开源的一个通讯方式,是一个基于TCP的发布订阅协议,MQTT使用类似MQ常用的发布/订阅模式,起到应用程序解耦,异步消息,削峰填谷的作用。优点:使用发布/订阅模式,提供一对多的消息发布,使消息发送者和接收者在
分类:编程语言   时间:2020-04-10 10:24:46    阅读次数:257
【经验分享】新手学Java编程语言怎么入门?
新手学Java编程语言怎么入门?掌握语言基础是第一步,了解java基础知识,Java关键字、核心概念或者基本编码技术。掌握操作符、控制执行流程、访问权限控制、复用类、多态、接口、字符串、泛型、数组、容器深入研究、JavaI/O系统、枚举类型、并发以及图形化用户界面等内容。 ...
分类:编程语言   时间:2020-04-10 10:25:04    阅读次数:79
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!