16namespace layer1_foundations {
17namespace data_structures {
34 for (i = 0; i < len; i++) {
43 for (i = 0; i < len; i++) {
44 w[i] = v1[i] + v2[i] + v3[i];
52 for (i = 0; i < len; i++) {
53 to[i] = through[from[i]];
61 for (i = 0; i < len; i++) {
62 to[i] = through[from[i]];
68 int *subset,
int sz,
int &value)
73 cout <<
"int_vec::is_costant_on_subset sz == 0" << endl;
81 for (i = 1; i < sz; i++) {
82 if (v[subset[i]] != a) {
91 int *take_away,
int nb_take_away)
97 for (i = 0; i < nb_take_away; i++) {
101 for (j = idx; j < len; j++) {
113 for (i = 0; i < len; i++) {
125 for (i = 0; i < len; i++) {
130 cout <<
"int_vec::find_first_nonzero_entry the vector is all zero" << endl;
139 for (p = v, i = 0; i < len; p++, i++) {
148 for (i = 0; i < len; i++) {
162 for (p = v, i = 0; i < len; p++, i++) {
172 for (p = from, q = to, i = 0; i < len; p++, q++, i++) {
183 for (p = from, q = to, i = 0; i < len; p++, q++, i++) {
193 for (p = v1, q = v2, i = 0; i < len; p++, q++, i++) {
207 cout <<
"int_vec::delete_element_assume_sorted "
208 "cannot find the element" << endl;
211 for (i = idx + 1; i < len; i++) {
229 for (i = 0; i < n; i++) {
230 if (j1 < k && v[j1] == i) {
238 cout <<
"int_vec::complement j2 != n - k" << endl;
250 for (i = 0; i < n; i++) {
251 if (j1 < k && v[j1] == i) {
259 cout <<
"int_vec::complement j2 != n - k" << endl;
278 cout <<
"int_vec::minimum len == 0" << endl;
282 for (i = 1; i < len; i++) {
295 cout <<
"int_vec::maximum len == 0" << endl;
299 for (i = 1; i < len; i++) {
311 for (i = 0; i < len; i++) {
320 for (i = 0; i < len; i++) {
330 int i, j, a, w = 1, w1;
333 for (i = 0; i < p.size(); i++) {
334 for (j = 0; j < p[i].size(); j++) {
363 for (i = 0; i < p.size(); i++) {
364 for (j = 0; j < p[i].size(); j++) {
365 cout << setw((
int) w) << p[i][j];
377 int *val, *mult, len;
388 int len_v,
int *&val,
int *&mult,
int &len)
396 for (i = 0; i < len_v; i++) {
402 for (j = len; j > idx; j--) {
404 mult[j] = mult[j - 1];
421 for (i = 0; i < 50; i++) {
428 for (i = len - 3; i < len; i++) {
447 for (i = 0; i < 50; i++) {
454 for (i = len - 3; i < len; i++) {
472 for (i = 0; i < len; i++) {
486 for (i = 0; i < len; i++) {
501 for (i = 0; i < len; i++) {
506 if (((i + 1) % 10) == 0) {
521 for (i = 0; i < len; i++) {
535 for (i = 0; i < len; i++) {
549 for (i = 0; i < len; i++) {
562 for (i = 0; i < len; i++) {
567 if ((i + 1) % 10 == 0) {
580 for (i = 0; i < len; i++) {
599 int *v,
int len,
int f_backwards)
610 int verbose_level = 0;
612 int f_v = (verbose_level >= 1);
614 cout <<
"int_vec::scan: " << s << endl;
616 istringstream ins(s);
619 cout <<
"int_vec::scan done, len = " << len << endl;
630 int verbose_level = 1;
632 int f_v = (verbose_level >= 1);
634 cout <<
"int_vec::scan: " << s << endl;
636 istringstream ins(s);
639 cout <<
"int_vec::scan done, len = " << len << endl;
645 int verbose_level = 0;
649 int f_v = (verbose_level >= 1);
652 cout <<
"int_vec::scan_from_stream" << endl;
663 cout <<
"int_vec::scan_from_stream done" << endl;
670 cout <<
"breaking off because of eof" << endl;
674 cout <<
"int_vec::scan_from_stream done" << endl;
680 cout <<
"c='" << c <<
"'" << endl;
686 cout <<
"int_vec::scan_from_stream done" << endl;
699 cout <<
"int_vec::scan_from_stream skipping space" << endl;
705 cout <<
"c='" << c <<
"'" << endl;
709 cout <<
"breaking off because of eof" << endl;
717 else if (c >=
'0' && c <=
'9') {
729 cout <<
"breaking off because c='" << c <<
"'" << endl;
737 cout <<
"int_vec::scan_from_stream inside loop: \""
738 << c <<
"\", ascii=" << (int)c << endl;
744 cout <<
"h=" << h <<
", len=" << len <<
", digit as string: " << s
745 <<
", numeric: " << a << endl;
752 cout <<
"int_vec::scan_from_stream reallocating to length " << len << endl;
765 cout <<
"int_vec::scan_from_stream done" << endl;
772 cout <<
"int_vec::scan_from_stream done" << endl;
778 cout <<
"breaking off because of eof" << endl;
782 cout <<
"int_vec::scan_from_stream done" << endl;
791 cout <<
"int_vec::scan_from_stream done" << endl;
805 for (i = 0; i < len; i++) {
807 sprintf(str + strlen(str),
"%d", a);
820 for (i = 0; i < len; i++) {
822 sprintf(str + strlen(str),
"%d", a);
833 for (i = 0; i < len; i++) {
834 cout << i <<
" : " << v[i] << endl;
840 int *p,
int m,
int n)
844 for (i = 0; i < m; i++) {
845 for (j = 0; j < n; j++) {
846 ost << p[i * n + j] <<
" ";
853 int *p,
int m,
int n,
int dim_n,
int w)
857 for (i = 0; i < m; i++) {
858 for (j = 0; j < n; j++) {
859 ost << setw((
int) w) << p[i * dim_n + j];
869 int *p,
int m,
int n)
874 for (i = 0; i < m; i++) {
876 for (j = 0; j < n; j++) {
877 ost << p[i * n + j] <<
", ";
886 int k,
int *A,
int *B,
int *C,
int *D)
894 for (i = 0; i < k; i++) {
895 for (j = 0; j < k; j++) {
896 Mtx[i * n + j] = A[i * k + j];
899 for (i = 0; i < k; i++) {
900 for (j = 0; j < k; j++) {
901 Mtx[i * n + k + j] = B[i * k + j];
904 for (i = 0; i < k; i++) {
905 for (j = 0; j < k; j++) {
906 Mtx[(k + i) * n + j] = C[i * k + j];
909 for (i = 0; i < k; i++) {
910 for (j = 0; j < k; j++) {
911 Mtx[(k + i) * n + k + j] = D[i * k + j];
917 int k,
int n,
int pivot)
922 for (i = 0; i < k; i++) {
924 for (j = 0; j < n; j++) {
928 Mtx[i * (n - 1) + jj] = Mtx[i * n + j];
937 int i, j, a, w = 1, w1;
940 for (i = 0; i < m; i++) {
941 for (j = 0; j < n; j++) {
983 for (i = 0; i < m; i++) {
984 for (j = 0; j < n; j++) {
985 ost << setw((
int) w) << p[i * n + j];
998 for (i = 0; i < m; i++) {
999 for (j = 0; j < n; j++) {
1000 cout << setw((
int) w) << p[i * n + j];
1013 for (i = 0; i < m; i++) {
1014 for (j = 0; j < n; j++) {
1015 cout << p[i * n + j];
1022 int *val,
int *mult,
int len)
1026 for (i = 0; i < len; i++) {
1030 if (mult[i] >= 10) {
1031 ost <<
"{" << mult[i] <<
"}";
1048 for (i = 0; i < len; i++) {
1063 for (i = 0; i < len; i++) {
1080 for (i = 0; i < len; i++) {
1094 for (i = 0; i < len; i++) {
1101 str.assign(s.str());
1109 for (i = 0; i < m; i++) {
1110 for (j = 0; j < n; j++) {
1111 Mt[j * m + i] = M[i * n + j];
catch all class for algorithms
int hashing_fixed_width(int hash0, int a, int bit_length)
void take_away(int *v, int &len, int *take_away, int nb_take_away)
void init5(int *v, int a0, int a1, int a2, int a3, int a4)
int first_difference(int *p, int *q, int len)
void print_dense(std::ostream &ost, int *v, int len)
void add3(int *v1, int *v2, int *v3, int *w, int len)
void print_classified(int *v, int len)
void complement(int *v, int n, int k)
void matrix_make_block_matrix_2x2(int *Mtx, int k, int *A, int *B, int *C, int *D)
void zero(int *v, long int len)
void apply(int *from, int *through, int *to, int len)
void print_classified_str(std::stringstream &sstr, int *v, int len, int f_backwards)
void delete_element_assume_sorted(int *v, int &len, int a)
void matrix_print_bitwise(int *p, int m, int n)
int count_number_of_nonzero_entries(int *v, int len)
void distribution_print(std::ostream &ost, int *val, int *mult, int len)
void print_integer_matrix_in_C_source(std::ostream &ost, int *p, int m, int n)
void add(int *v1, int *v2, int *w, int len)
int matrix_max_log_of_entries(int *p, int m, int n)
int minimum(int *v, int len)
int find_first_nonzero_entry(int *v, int len)
void mone(int *v, long int len)
int is_constant_on_subset(int *v, int *subset, int sz, int &value)
void print_integer_matrix(std::ostream &ost, int *p, int m, int n)
void matrix_print_tight(int *p, int m, int n)
void matrix_print_ost(std::ostream &ost, int *p, int m, int n)
void print_integer_matrix_width(std::ostream &ost, int *p, int m, int n, int dim_n, int w)
void create_string_with_quotes(std::string &str, int *v, int len)
void print_fully(std::ostream &ost, std::vector< int > &v)
int vec_max_log_of_entries(std::vector< std::vector< int > > &p)
void transpose(int *M, int m, int n, int *Mt)
void set_print(std::ostream &ost, int *v, int len)
void distribution(int *v, int len_v, int *&val, int *&mult, int &len)
void matrix_delete_column_in_place(int *Mtx, int k, int n, int pivot)
void matrix_print(int *p, int m, int n)
void print_to_str_naked(char *str, int *data, int len)
void distribution_compute_and_print(std::ostream &ost, int *v, int v_len)
void vec_print(std::vector< std::vector< int > > &p)
void print_to_str(char *str, int *data, int len)
void print_Cpp(std::ostream &ost, int *v, int len)
void copy(int *from, int *to, long int len)
void print_str(std::stringstream &ost, int *v, int len)
void scan_from_stream(std::istream &is, int *&v, int &len)
void integer_vec_print(std::ostream &ost, int *v, int len)
int maximum(int *v, int len)
void copy_to_lint(int *from, long int *to, long int len)
void print_str_naked(std::stringstream &ost, int *v, int len)
void print(std::ostream &ost, std::vector< int > &v)
int is_zero(int *v, long int len)
void apply_lint(int *from, long int *through, long int *to, int len)
void print_as_table(std::ostream &ost, int *v, int len, int width)
int hash(int *v, int len, int bit_length)
void swap(int *v1, int *v2, long int len)
void print_GAP(std::ostream &ost, int *v, int len)
void scan(std::string &s, int *&v, int &len)
a collection of functions related to sorted vectors
int int_vec_search(int *v, int len, int a, int &idx)
a statistical analysis of data consisting of single integers
void init(int *data, int data_length, int f_second, int verbose_level)
void print(int f_backwards)
void print_naked_stringstream(std::stringstream &sstr, int f_backwards)
basic number theoretic functions
the orbiter library for the classification of combinatorial objects