data

堆排序原理及其js实现

送分小仙女□ 提交于 2020-04-06 07:56:12
图文来源:https://www.cnblogs.com/chengxiao/p/6129630.html 堆排序是利用 堆 这种数据结构而设计的一种排序算法,堆排序是一种 选择排序, 它的最坏,最好,平均时间复杂度均为O(nlogn),它也是不稳定排序。首先简单了解下堆结构。堆排序是利用 堆 这种数据结构而设计的一种排序算法,堆排序是一种 选择排序, 它的最坏,最好,平均时间复杂度均为O(nlogn),它也是不稳定排序。首先简单了解下堆结构。 堆     堆是具有以下性质的 完全二叉树 :每个结点的值都大于或等于其左右孩子结点的值,称为大顶堆;或者每个结点的值都小于或等于其左右孩子结点的值,称为小顶堆。如下图: 同时,我们对堆中的结点按层进行编号,将这种逻辑结构映射到数组中就是下面这个样子 该数组从逻辑上讲就是一个堆结构,我们用简单的公式来描述一下堆的定义就是: 大顶堆:arr[i] >= arr[2i+1] && arr[i] >= arr[2i+2] 小顶堆:arr[i] <= arr[2i+1] && arr[i] <= arr[2i+2] 接下来,我们来看看堆排序的基本思想及基本步骤: 堆排序基本思想及步骤 堆排序的基本思想是:将待排序序列构造成一个大顶堆,此时,整个序列的最大值就是堆顶的根节点。将其与末尾元素进行交换,此时末尾就为最大值。然后将剩余n

在视图控制器之间传递数据

雨燕双飞 提交于 2020-04-06 06:28:35
问题: I'm new to iOS and Objective-C and the whole MVC paradigm and I'm stuck with the following: 我是iOS和Objective-C以及整个MVC范例的新手,但我坚持以下几点: I have a view that acts as a data entry form and I want to give the user the option to select multiple products. 我有一个充当数据输入表单的视图,我想给用户选择多个产品的选项。 The products are listed on another view with a UITableViewController and I have enabled multiple selections. 这些产品在另一个带有 UITableViewController 视图中列出,并且我启用了多个选择。 My question is, how do I transfer the data from one view to another? 我的问题是,如何将数据从一个视图传输到另一个视图? I will be holding the selections on the UITableView in an array,

微信小程序学习笔记(九)音乐播放器(下一曲、上一曲、自动下一曲)

白昼怎懂夜的黑 提交于 2020-04-06 05:22:15
微信小程序学习笔记(九)音乐播放器(下一曲、上一曲、自动下一曲) 要实现自动下一曲、下一曲、上一曲功能,实现列表的循环播放,必须清楚当前播放的是列表中的第几首歌。因此,在程序中设置一个数据记录当前播放的歌曲是列表中的第几首歌曲的数组下标,从而实现以上功能。 一、自动下一曲 在musicdemo.js的data中添加currentIndex数据。 data: { /**当前播放的列表中的歌曲的下标 */ currentIndex:0, 在onLoad函数中,添加如下代码 //自动播放下一曲 this.data.musicCtx.onEnded(()=>{ //下一曲,即让当前的数组下标加1 var index=this.data.currentIndex; index++; if(index>=this.data.musicList.length){ index=0;//当播放完列表中最后一首歌后,从头开始循环列表 } console.log(index) this.setData({ currentIndex:index }) this.data.musicCtx.src=this.data.musicList[index].musicSrc;//开始播放 }) 此时,发现当点击列表的歌曲时,虽然可以自动播放下一曲,但是播放的歌曲却是错误的,原因是点击播放列表中的歌曲时

phantom+express

你。 提交于 2020-04-06 02:44:05
var express = require( 'express' ); var router = express.Router(); var phantom = require( 'phantom' ); var web2img = (url, res, dataType, width, height) => { phantom.create().then( function (ph) { ph.createPage().then((page) => { var settings = { // operation: "POST", encoding: "utf8" }; page.open(url, settings).then((status) => { console .log(status); var fmt = 'JPEG' ; if (status == 'success' ) { page.property( 'viewportSize' , {width: width || 540 , height: height || 960 }); page.renderBase64(fmt).then((data) => { if (dataType == 0 ) { res.json({code: 1 , data: "data:image/png;base64," +

Spring Boot 使用 spring.datasource.data 的时候找不到数据文件

无人久伴 提交于 2020-04-05 17:48:26
对需要导入使用 SQL 文件,已经放置到了 resources\data-trans.sql 下面了。 但是在配置的时候配置: spring.datasource.data=data-trans.sql 显示这个数据库 SQL 文件找不到。 错误的信息为: Property spring.datasource.data with value 'ServletContext resource [/data-trans.sql]' is invalid: The specified resource does not exist. 你需要将 spring.datasource.data=data-trans.sql 的文件路径配置参数修改为: spring.datasource.data=classpath:data-trans.sql 或 spring.datasource.data=classpath:/data-trans.sql 都可以,这个主要告诉 Spring Boot 载入数据文件的路径。 https://www.cwiki.us/display/SpringBootZH/questions/57938806 来源: oschina 链接: https://my.oschina.net/honeymoose/blog/3220268

MySQL5.7.25解压版安装教程

烂漫一生 提交于 2020-04-05 17:36:07
1.下载对应的zip包 2.选择合适的安装路径,并记录解压的路径 本人的是 D:\\MySQL\\mysql-5.7.25-winx64 3.配置环境变量,添加变量名path,并在下方的变量值框中输入mysql bin根路径 我的是 D:\\MySQL\\mysql-5.7.25-winx64\bin 4.新建my.ini文件,并放在mysql根目录(我的是D:\\MySQL\\mysql-5.7.25-winx64\\mysql-5.7.25-winx64) 注意路径用\\而不是\ 配置系统环境:打开环境变量设置,在用户变量(系统变量)新建MYSQL_HOME变量,值为D:\MySQL\mysql-5.7.25-winx64 在用户环境变量(系统变量)新建Path变量,组、值为%MYSQL_HOME%\bin即可; [mysqld] port = 3306 basedir=D:\\MySQL\\mysql-5.7.25-winx64 datadir=D:\\MySQL\\mysql-5.7.25-winx64\\data max_connections=200 character-set-server=utf8 default-storage-engine=INNODB sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

全球疫情发布图

╄→гoц情女王★ 提交于 2020-04-04 18:42:10
一、要求:   我们有的是热情、激情、无限的动力,清明三天放假休息,为了纪念牺牲的烈士,我们集体决定仿照约翰·霍普金斯大学制作全球疫情发布图(WEB版),可以实时访问。行动起来吧。随时抽查,今天工作八小时。 二、我的全球疫情发布图: 三、设计思路: 1、准备数据:使用python从网页上爬取数据,并存入mysql数据库。 1)全球数据爬取: import requests import json from pymysql import * import requests from retrying import retry headers = {"User-Agent": "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Mobile Safari/537.36" ,"Referer": "https://wp.m.163.com/163/page/news/virus_report/index.html?_nw_=1&_anw_=1"} def _parse_url(url): response = requests.get(url,headers=headers,timeout=3) #3秒之后返回

js,jQuery获取html5的data-*属性

无人久伴 提交于 2020-04-04 14:32:20
今天做项目的时候发现一个坑,关于jQuery获取data-*属性的方法data(),特写此篇来记录。 data-* 自定义数据属性 HTML5规定可以为元素添加非标准型的属性,只需添加前缀data-,这些属性可以随意添加,随意命名,目的是为元素提供与渲染无关的信息,或提供语义信息。 js获取 data-* 的方式 通过dataset属性访问 //HTML代码 <div id="myDiv" data-appid="123" data-myname="lsxj"></div> //js代码 var div = document.getElementById("myDiv"); var appId = div.dataset.appid;//获取data-appid的值 var myName = div.dataset.myname;//获取data-myname的值 //设置值 div.dataset.appid = 456; div.dataset.myname = "newname"; //最终HTML结果 <div id="myDiv" data-appid="456" data-myname="newname"></div> dataset属性的值是DOMStringMap的一个实例,名值对的映射。每个data-name形式的属性都有一个对应的属性,只不过该属性名没有data

jQuery.getJSON()

大兔子大兔子 提交于 2020-04-04 06:49:43
jQuery.getJSON (url, [data], [callback]) 通过 HTTP GET 请求载入 JSON 数据。 返回值 : XMLHttpRequest 在 jQuery 1.2 中,您可以通过使用JSONP 形式的回调函数来加载其他网域的JSON数据,如 "myurl?callback=?"。jQuery 将自动替换 ? 为正确的函数名,以执行回调函数。 注意:此行以后的代码将在这个回调函数执行前执行。 参数 : urlString 发送请求地址。 data (可选)Map待发送 Key/value 参数。 callback (可选)Function载入成功时回调函数。 示例 : 描述 : 从 Flickr JSONP API 载入 4 张最新的关于猫的图片。 HTML 代码: <div id="images"></div>jQuery 代码: $.getJSON("http://api.flickr.com/services/feeds/photos_public.gne?tags=cat&tagmode=any&format=json&jsoncallback=?", function(data){ $.each(data.items, function(i,item){ $("<img/>").attr("src", item.media.m)

PHP对大文件的处理思路

人盡茶涼 提交于 2020-04-04 03:10:13
需求: 现有一个1G左右的日志文件,大约有500多万行, 用php返回最后几行的内容。 在php中,对于文件的读取时,最快捷的方式莫过于使用一些诸如file、file_get_contents之类的函数,简简单单的几行代码就能 很漂亮的完成我们所需要的功能。但当所操作的文件是一个比较大的文件时,这些函数可能就显的力不从心, 下面将从一个需求入手来说明对于读取 大文件 时,常用的操作方法。 1. 直接采用file函数来操作 由于 file函数是一次性将所有内容读入内存,而php为了防止一些写的比较糟糕的程序占用太多的内存而导致系统内存不足,使服务器出现宕机,所以默认情况下 限制只能最大使用内存16M,这是通过php.ini里的memory_limit = 16M来进行设置,这个值如果设置-1,则内存使用量不受限制。 下面是一段用file来取出这具文件最后一行的代码。代码执行大概2分钟左右。 $fp = fopen($file, "r"); $num = 10; $chunk = 4096; $fs = sprintf("%u", filesize($file)); $max = (intval($fs) == PHP_INT_MAX) ? PHP_INT_MAX : filesize($file); for ($len = 0; $len < $max; $len += $chunk