在js的学习中经常见到描述一个对象为类数组对象,那么到底什么样的对象可以称为类数组对象呢?
类数组对象有两个要求:
- 对象有一个整数类型的length属性
- length属性的值大于对象中元素的最大索引
每天进步一点点
在js的学习中经常见到描述一个对象为类数组对象,那么到底什么样的对象可以称为类数组对象呢?
类数组对象有两个要求:
jQuery中有两个each方法,一个是$().each(callback),一个是$.each();
API中对$().each(callback)的描述如下:
以每一个匹配的元素作为上下文来执行一个函数。
在数据挖掘中,实际起作用的特征往往是未知的,因此在挖掘的过程中为了保证结果的准确性往往会引入大量的特征,但是这些特征包含的信息量各不相同,有些甚至与结果完全不相关,另外,特征之间也不一定是彼此独立的,有些是有交叉的,有共性的,相关的。在很多的应用中,数据特征数量十分庞大,不移除这些无关的特征会预测算法也不会有好的运行效果。
今天复习了一下二叉树的遍历,包括递归与非递归形式,记录一下
首先定义一个简单的二叉树结构,包括节点的值与左子节点和右子节点
这篇文章只要是介绍分类算法评估标准,介绍标准之前首先介绍一下评价算法的前提,混淆矩阵,如图
归并排序算法总结(稳定,时间复杂度n*logn)
public void mergeSort(int[] arr, int left, int right) {
if(left<right){
int center = (right+left)/2;
mergeSort(arr,left,center);
mergeSort(arr,center+1,right);
merge(arr,left,right,center);
}
}
/**
* 将两个数组进行排序,排序前两个数组有序,排序后依然有序
* @param arr 要排序的数组
* @param left 左数组第一个元素的索引
* @param right 右数组最后一个元素的索引
* @param center 左数组最后一个元素的索引,center+1是右数组第一个元素的索引
*/
public void merge(int[] arr,int left,int right,int center){
// 与待排序数组等长的临时数组
int[] temp = new int[arr.length];
// 右侧数组的索引
int mid = center+1;
// third 中间数组的索引
int third = left;
// 记录左侧数组的第一个元素的索引,用于将临时数组的元素复制到原数组时
int tmp = left;
while(left <= center && mid <= right){
// 从两个数组中取出小的放入中间数组
if(arr[left]<=arr[mid]){
temp[third++]=arr[left++];
}else{
temp[third++]=arr[mid++];
}
}
// 剩余部分依次加入到中间数组
while(mid<=right){
temp[third++]= arr[mid++];
}
while(left<=center){
temp[third++]= arr[left++];
}
// 将中间数组的内容复制回原数组
while(tmp<=right){
arr[tmp] = temp[tmp++];
}
}
java堆排,记录一下。(选择排序,时间复杂度O(n*logn),不稳定排序)
public void heapSort(int[] arr) {
int arrLength = arr.length;
for(int i = 0;i<arrLength-1;i++){
int lastIndex = arrLength-1-i;
buildMaxHeap(arr,lastIndex);
swap(arr,0,lastIndex);
}
}
public void buildMaxHeap(int[] arr,int lastIndex){
for(int i = (lastIndex-1)/2;i>=0;i--){
int k = i;
while(k*2+1<=lastIndex){
int biggerIndex = 2*k+1;
if(biggerIndex<lastIndex){
if(arr[biggerIndex]<arr[biggerIndex+1]){
biggerIndex++;
}
}
if(arr[k]<arr[biggerIndex]){
swap(arr,k,biggerIndex);
k = biggerIndex;
}else{
break;
}
}
}
}
css3变形是一些效果的集合,比如平移,旋转,缩放和倾斜,每个效果都被称为变形函数,它们可以控制元素发生旋转、缩放、平移等变化。
之前一直想同样环境下学习的两个人,为什么取得的成果会有很大的不同,得出的结论就是思考。也就是说,为什么同样的学习,有些人也看起来更努力一些,结果往往还不如那些看起来不努力的人?那除了智商的原因,还有什么其他的东西导致了人与人之间的不同?通过长时间的观察研究,我得出的结论是,同样的学习,有些人一边学习,一边思考一边总结,那他掌握东西就比那些不思考的人掌握的更多更深刻。俗话讲的失败乃成功之母,你失败了不去总结经验,下次还是失败。所以说人一定要不断学习不断思考总结。