MOOC:数据结构与算法实战(周强)。
主要内容:创建数据,取值,查找数组元素地址,判断数组索引是否越界,找出数组元素最大/最小值。
出现问题:
int *p = malloc(100*sizeof(int));
解决方法:int *p = (int *)malloc(100*sizeof(int)),
void *malloc(long NumBytes):该函数分配了NumBytes个字节,并返回了指向这块内存的指针。如果分配失败,则返回一个空指针(NULL)。
总结:对C中指针和数组概念不清晰,Java泛型还需进修。
实现代码:
//数组
#include <stdio.h>
#include <stdlib.h>
// 查找数组元素 的地址
int findX(int * array, int size,int x){
int index=-1; // 如果元素不存在则返回-1
for(int i=0;i<size;i++){
if (array[i]==x){
index=i;
}
}
return index;
}
// 查找指定地址的 数组元素,
// 重点在于判断 y 是否越界!
int findY(int *array, int size, int y,int *px){
int value=1;
if (y<0 || y>=size){
val