33,007
社区成员
发帖
与我相关
我的任务
分享
#include <iostream>
using namespace std;
typedef struct node
{
int data;
node *next;
}*link, node;
node *preInsert(link head, int x, int y)
{
link temp = head;
while (temp && temp->next->data != y)
{
temp = temp->next;
}
if (temp)
{
node *insert = new node;
if (!insert)
{
cout << "内存分配错误" << endl;
exit(0);
}
insert->data = x;
insert->next = temp->next;
temp->next = insert;
}
return temp->next;
}
int main()
{
link temp;
node *head = new node;
node *first = new node;
node *second = new node;
head->data = 1;
head->next = first;
first->data = 2;
first->next = second;
second->data = 4;
second->next = NULL;
temp = head;
node *current = preInsert(temp, 3, 4);
while (current)
{
cout << current->data << endl;
current = current->next;
}
system("pause");
return 0;
}
int main() { printf("Hello, World!"); }
//题2
typedef struct link
{
ElemType data;
}link;
int search(link a[],int m,int n,Elemtype x)
{
int i=m,j=n;
if(m>n)
return -1;
else
{
k=(i+j)/2;
if(a[k]>x)
return search(a,k+1,n,x);
else
if(a[k]==x)
return k;
else
return search(a,m,k-1,x);
}
}
//题1
typedef struct linknode
{
ElemType data;
linknode *next;
}*linklist,linknode;
linklist inseart(linklist head,Elemtype x,Elemtype y)
{
linklist p=head;
while(p->next&&p->next->data!=y)
p=p->next;
if(p->next)
{
linklist q=(linklist)malloc(sizeof(linknode));
q->data=x;
q->next=p->next;
p->next=q;
}
return head;
}