结构的时间复杂度
Time complexity of struct
我在医院管理系统中使用 C++ 中的结构来保存患者记录,并使用它来添加、列出、搜索和删除记录,例如,
struct details{
char first_name[20];
char last_name[20];
int age;
char gender[7];
int phone;
char doc_name[40];
};
details d[100];
void add()
{
counter++;
cout<<"\n\t\t\tRECORD NUMBER: "<<counter;
cout<<"\n\t\t\t1.FIRST NAME: ";
cin>>d[counter].first_name;
cout<<"\t\t\t2.LAST NAME: ";
cin>>d[counter].last_name;
cout<<"\t\t\t3.AGE: ";
cin>>d[counter].age;
cout<<"\t\t\t4.GENDER: ";
cin>>d[counter].gender;
cout<<"\t\t\t5.PHONE: ";
cin>>d[counter].phone;
cout<<"\t\t\t6.DOCTOR: ";
cin>>d[counter].doc_name;
char add_another;
cout<<"\n Add another record (Y/N)?: ";
cin>>add_another;
if(add_another == 'Y')
add();
else
menu();
}
我想知道使用struct的时间复杂度。使用链表或地图或矢量是保存记录的更好选择吗?
我建议您使用结构向量来保存数据。
接下来,我建议您创建 std::map
用于搜索数据库。地图的类型为:
std::map<key_type, unsigned int>
其中 key_type
是您要搜索的字段的数据类型。
unsigned int
将是向量的索引。
std::map
个变量称为 索引表。这使您可以在不修改数据向量的情况下对记录进行排序和高效搜索。
此外,如果可以,请将 char *
字段替换为 std::string
。 std::string
类型更容易使用,尤其是 std::vector
和 std::map
。
最好的开发途径是使用现有的数据库,而不是编写自己的数据库。请记住,您有开发和测试时间。现有数据库已经开发和测试;您只需访问它们;不开发它们。
我在医院管理系统中使用 C++ 中的结构来保存患者记录,并使用它来添加、列出、搜索和删除记录,例如,
struct details{
char first_name[20];
char last_name[20];
int age;
char gender[7];
int phone;
char doc_name[40];
};
details d[100];
void add()
{
counter++;
cout<<"\n\t\t\tRECORD NUMBER: "<<counter;
cout<<"\n\t\t\t1.FIRST NAME: ";
cin>>d[counter].first_name;
cout<<"\t\t\t2.LAST NAME: ";
cin>>d[counter].last_name;
cout<<"\t\t\t3.AGE: ";
cin>>d[counter].age;
cout<<"\t\t\t4.GENDER: ";
cin>>d[counter].gender;
cout<<"\t\t\t5.PHONE: ";
cin>>d[counter].phone;
cout<<"\t\t\t6.DOCTOR: ";
cin>>d[counter].doc_name;
char add_another;
cout<<"\n Add another record (Y/N)?: ";
cin>>add_another;
if(add_another == 'Y')
add();
else
menu();
}
我想知道使用struct的时间复杂度。使用链表或地图或矢量是保存记录的更好选择吗?
我建议您使用结构向量来保存数据。
接下来,我建议您创建 std::map
用于搜索数据库。地图的类型为:
std::map<key_type, unsigned int>
其中 key_type
是您要搜索的字段的数据类型。
unsigned int
将是向量的索引。
std::map
个变量称为 索引表。这使您可以在不修改数据向量的情况下对记录进行排序和高效搜索。
此外,如果可以,请将 char *
字段替换为 std::string
。 std::string
类型更容易使用,尤其是 std::vector
和 std::map
。
最好的开发途径是使用现有的数据库,而不是编写自己的数据库。请记住,您有开发和测试时间。现有数据库已经开发和测试;您只需访问它们;不开发它们。