arr

第一章--python数据模型

陌路散爱 提交于 2019-12-02 11:01:48
第一章–python数据模型 这一章主要介绍了python的特殊函数的使用和注意事项,特殊函数即内置的以‘__’为开头结尾的函数 collections.namedtuple用于构造只有少数属性但没有方法的对象,类似于c语言中的struct https://docs.python.org/3.8/library/collections.html#collections.namedtuple from collections import namedtuple Student=namedtuple('Student',['name','grader']) stu=Student('jason',2) print(stu) #Student(name='jason', grader=2) random.choice 用于从序列中随机选出一个元素 from random import choice arr=[1,2,3,4,5] choice(arr) # a num in arr 原文中有一句话‘仅仅实现了 _ getitem_ () 方法,这一摞牌就变成可迭代的’ 如果类实现了__iter__方法,那么这个类就是可迭代iterable的 对for x in arr这类语句,如果arr没有实现__iter__,解释器会找arr的__getitem__方法,如果有则用__getitem_

数组去重的方法

冷暖自知 提交于 2019-12-02 10:57:56
1.将数组的每一个元素依次与其他元素做比较,发现重复元素,删除 var arr = [1,23,1,1,1,3,23,5,6,7,9,9,8,5,5,5,5];console.log(arr); //[1, 23, 1, 1, 1, 3, 23, 5, 6, 7, 9, 9, 8, 5, 5, 5, 5]   function noRepeat1(arr) { for(var i = 0; i < arr.length-1; i++){ for(var j = i+1; j < arr.length; j++){ if(arr[i]===arr[j]){ arr.splice(j,1); j--; } } } return arr; } var arr2 = noRepeat1(arr); console.log(arr2); //[1, 23, 3, 5, 6, 7, 9, 8] 2. 借助indexOf()方法判断此元素在该数组中首次出现的位置下标与循环的下标是否相等 var arr = [1,23,1,1,1,3,23,5,6,7,9,9,8,5,5,5]; console.log(arr); //[1, 23, 1, 1, 1, 3, 23, 5, 6, 7, 9, 9, 8, 5, 5, 5] function noRepeat2(arr) { for (var i =

冒泡排序和选择排序的区别

大憨熊 提交于 2019-12-02 10:37:47
冒泡排序和选择排序的区别 冒泡排序是前后两个两两比较,大的数往后面放,像个泡泡一样,一直冒到最后面去;代码如下: public static void maopao(int[] arr){ for(int i=0;i<arr.length;i++) { for(int j=0;j<arr.length-1-i;j++) { if(arr[j]>arr[j+1]) { int temp=arr[j]; arr[j]=arr[j+1]; arr[j+1]=temp; } } } } 而选择排序是将一个数拿出来与后面所有数比较,找出最小值,放到最前面;代码如下: public static void xuanze(int[] arr) { for(int i=0;i<arr.length-1;i++) { int min=arr[i]; int index=i; for(int j=i+1;j<arr.length;j++) { if(min>arr[j]) { min=arr[j]; index=j; } } int temp=arr[i]; arr[i]=arr[index]; arr[index]=temp; } } 来源: https://blog.csdn.net/weixin_45799293/article/details/102752836

数组的方法

余生颓废 提交于 2019-12-02 09:07:15
创建: var arr = []; //字面量方式 var arr = [“hello”,123,true,undefined,{},[],function(){},NaN,null]; console.log(arr); var arr2 =new Array(); //构造函数方式 var arr2 =new Array(“hello”,123,true,undefined,{},[],function(){},NaN,null) console.log(arr2); //当只有一个数据时,两种创建方式不同 var arr1 = [5]; //表示有一个数组元素5 var arr2 =new Array(5); //表示有5个数组元素,值全部为undefined 5表示长度 var arr = []; var arr1 =[]; console.log(arr ==arr1); //false // 任何两个对象都不相等 // 数组的操作: 索引操作 索引:0~数组.length-1 中括号:arr[0] 循环遍历数组 数组的增删改查 增 var arr = []; arr[0] = 10; arr[5] = 20; console.log(arr[0]); //给第一个值赋值10 console.log(arr[5]); //数组长度增加到6,没有值的显示empty arr

数组的冒泡排序和选择排序

谁都会走 提交于 2019-12-02 09:07:10
数组排序: 冒泡排序:将数组中的元素,两两比较,大的放后面 for(var i = 0 ; i < arr.length-1 ; i++){ for ( var j = 0 ; j< arr.length-1-i ; j++){ if( arr[ j ] > arr [ j +1]){ var a = arr[ j ]; arr[ j ] = arr [ j +1]; arr[ j+1] = a ; } } } console.log(arr); !] 选择排序:从左向右,依次取一个数值,与后面所有数值做比较,最小的放前面 var arr = [6,4,9,0,1,3,2]; // 0-1,0-2,0-3,0-4 0 ~ length-1 (第一位和第二位、第三位、第四位、第五位依次比较) // 1-2,1-3,1-4 1 ~ length-1 (第二位和第三位、第四位、第五位依次比较) // 2-3,2-4 2 ~ length-1 (第三位和第四位、第五位依次比较) //3-4 3 ~ length-1 (第四位和第五位比较) for(var i = 0;i<arr.length-1;i++){ var min = arr[i]; var minIndex = i; for(var j=i+1;j<arr.length;j++){ if(min > arr[j]){ min

拖拽,切换位置

纵饮孤独 提交于 2019-12-02 08:47:39
var div = document.getElementsByClassName('name')[0]; // var arr = []; // indexP 数值和 div次序的对应关系,交换顺序后再寄回换数组顺序 initDrag({ parentDom: div, num: 3, classList: 'age' }, { attrList: { id: 10, gmcc: 22 } }) /** * 父级中不能有 col-md-*的定位元素 position 如果没有将 以table body为参考 pointer-events: none; 当元素包含iframe时,,父类的拖拽事件,将不会触发,, 此css属性会将 实践和hover 取消 * @param _parentDom 需相对定位 * @param _num 阶数 * @param _classList 需要添加的类名 字符串用空格分割 */ /** * @param base{ * parentDom 需相对定位 * num 阶数 * classList 需要添加的类名 字符串用空格分割 * } * * @param option{ * eventList{ * type 类型:fn 引用方法 * } * ... * ], * attrList{ * attrName : value, * .... * }

Java学习笔记-2-数组

主宰稳场 提交于 2019-12-02 06:53:17
数组获取最大值元素 1 public static void main(String[] args) { 2 int[] arr = { 5, 15, 2000, 10000, 100, 4000 }; 3 //定义变量,保存数组中0索引的元素 4 int max = arr[0]; 5 //遍历数组,取出每个元素 6 for (int i = 0; i < arr.length; i++) {//从1开始优化一下不用自己跟自己比,更好的写法!!! 7 //遍历到的元素和变量max比较 8 //如果数组元素大于max 9 if (arr[i] > max) { 10 //max记录住大值 11 max = arr[i]; 12 } 13 } 14 System.out.println("数组最大值是: " + max); 15 }结果:  数组最大值是: 10000 数组元素反转 1 public static void main(String[] args) { 2 int[] arr = { 1, 2, 3, 4, 5 }; 3 for (int i = arr.length-1; i>=0; i--) {//arr.for 4 System.out.println(arr[i]); 5 } 6 }结果: 5 4 3 2 1 冒泡排序 1 public static void

【算法】牛客网前端编程(1-10题)

喜你入骨 提交于 2019-12-02 06:34:23
来源:牛客网 1. //找出元素 item 在给定数组 arr 中的位置 function indexOf(arr, item) { for(var i=0;i<arr.length;i++){ if(arr[i]===item) return i; } return -1; } 2. //计算给定数组 arr 中所有元素的总和 function sum(arr) { var sum=0; for(var i=0;i<arr.length;i++){ sum=sum+arr[i]; } return sum; } 3. //移除数组 arr 中的所有值与 item 相等的元素。不要直接修改数组 arr,结果返回新的数组 function remove(arr, item) { var newArr=[]; for(var i=0;i<arr.length;i++){ if(arr[i]!==item) newArr.push(arr[i]); } return newArr; } 4. //移除数组 arr 中的所有值与 item 相等的元素,直接在给定的 arr 数组上进行操作,并将结果返回 function removeWithoutCopy(arr, item) { var n=arr.length for(var i=0;i<n;i++){ if(arr[i]===item

使用递归计算给定数组元素的总和

此生再无相见时 提交于 2019-12-02 06:31:56
计算给定数组 arr 中所有元素的总和,转载自CSDN博客网 1.不考虑算法复杂度,用递归做:   function sum(arr) {    var len = arr.length;    if (len == 0){    return 0;    } else if (len == 1){    return arr[0];    } else {    return arr[0] + sum(arr.slice(1));    }   } 2.常规循环:   function sum(arr) {    var s = 0;    for ( var i=arr.length-1; i>=0; i--) {    s += arr[i];    }    return s;   } 3.函数式编程 map-reduce:   function sum(arr) {    return arr.reduce( function (prev, curr, idx, arr){    return prev + curr;    });   } 4.forEach遍历:   function sum(arr) {    var s = 0;    arr.forEach( function (val, idx, arr) {    s += val;    }, 0);   

numpy模块

北城以北 提交于 2019-12-02 06:16:17
目录 numpy简介 为什么要用numpy 创建numpy数组 numpy数组的常用属性 nump数组的数据类型 ndarray的创建方法 array() arange() linespace/logspace zeros/ones/eye/empty reshape numpy索引和切片 numpy数组元素替换 numpy数组的合并 numpy数组的运算 numpy数组运算函数 数学统计方法 随机数 numpy简介 numpy是Python的一种开源的数值计算扩展库。这种库可用来存储和处理大型numpy数组,比Python自身的嵌套列表结构要高效的多(该结构也可以用来表示numpy数组)。 numpy库有两个作用: 区别于list列表,提供了数组操作、数组运算、以及统计分布和简单的数学模型 计算速度快,甚至要由于python内置的简单运算,使得其成为pandas、sklearn等模块的依赖包。高级的框架如TensorFlow、PyTorch等,其数组操作也和numpy非常相似。 为什么要用numpy 现在我们来想一个场景: 购物车中存放商品的数量,依次为2,4,6,1每一个商品对应一个价格,依次是10,4,100, 29, 求一下,总价是多少? 正常思路就是: print(2*10 + 4*4 + 6*100 + 1*29) 665 而此时可以使用两个列表分别表示商品个数和价格