如何灵活地使用迭代?
一
1 确定迭代变量
在可以用迭代算法解决的问题中,至少存在一个直接或间接地不断由旧值递推出新值的变量,这个变量就是迭代变量。
2 建构起迭代关系式
所谓迭代关系式,指如何从变量的前一个值推出其下一个值的公式(或关系)。
3 对迭代过程进行控制
二
void CreateListTail(LinkList *L, int n)
{
LinkList p, r;
int i;
srand(time(0));
*L = (LinkList)malloc(sizeof(Node));
r= *L;
for( i=0; i < n; i++ )
{
p = (Node *)malloc(sizeof(Node));
p->data = rand()%100+1;
r->next = p; //迭代关系式
r = p; //核心:迭代变量要始终不断更新
}
r->next = NULL;
}
三
for (int i = 0; i < Number; i++)
{
//这里分配内存
//这里有一个变量始终是指向上一块分配的内存
//因为这个核心变量的存在才使得问题的思考变得简化起来
}
四各种迭代的灵活应用
1 核心:因为控制条件的不同而选择采取不同的形式
具体采用do while ,for,while do哪种形式取决于控制条件
2 do while 和while do的本质差异:
主要是在首次
如果首次判断条件满足进入循环体,则do while 和while do的并无本质差异。