📄 group__gdsl__perm.html
字号:
</tr></table><hr><h2>Function Documentation</h2><a class="anchor" name="g5ac48f8e5aed0700bf6d74525ab4dc5f"></a><!-- doxytag: member="gdsl_perm.h::gdsl_perm_alloc" ref="g5ac48f8e5aed0700bf6d74525ab4dc5f" args="(const char *NAME, const ulong N)" --><p><table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"><a class="el" href="group__gdsl__perm.html#gd6fc9c69f61c5703242070522910bea8">gdsl_perm_t</a> gdsl_perm_alloc </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const char * </td> <td class="mdname" nowrap> <em>NAME</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td class="md"></td> <td class="md" nowrap>const <a class="el" href="group__gdsl__types.html#g9c34ac44da309b004570530c8cec8a0e">ulong</a> </td> <td class="mdname" nowrap> <em>N</em></td> </tr> <tr> <td class="md"></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr></table><table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td><p>Create a new permutation. <p>Allocate a new permutation data structure of size N wich name is set to a copy of NAME.<p><dl compact><dt><b>Note:</b></dt><dd>Complexity: O( N ) </dd></dl><dl compact><dt><b>Precondition:</b></dt><dd>N > 0 </dd></dl><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>N</em> </td><td>The number of elements of the permutation to create. </td></tr> <tr><td valign="top"></td><td valign="top"><em>NAME</em> </td><td>The name of the new permutation to create </td></tr> </table></dl><dl compact><dt><b>Returns:</b></dt><dd>the newly allocated identity permutation in its linear form in case of success. <p>NULL in case of insufficient memory. </dd></dl><dl compact><dt><b>See also:</b></dt><dd><a class="el" href="group__gdsl__perm.html#g6b47f17955cf07b9152f140f12f95082">gdsl_perm_free()</a> <p><a class="el" href="group__gdsl__perm.html#ge3ba6e6c706cf1ddeeb7ca810762b0ea">gdsl_perm_copy()</a> </dd></dl> </td> </tr></table><a class="anchor" name="g6b47f17955cf07b9152f140f12f95082"></a><!-- doxytag: member="gdsl_perm.h::gdsl_perm_free" ref="g6b47f17955cf07b9152f140f12f95082" args="(gdsl_perm_t P)" --><p><table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">void gdsl_perm_free </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="group__gdsl__perm.html#gd6fc9c69f61c5703242070522910bea8">gdsl_perm_t</a> </td> <td class="mdname1" valign="top" nowrap> <em>P</em> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr></table><table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td><p>Destroy a permutation. <p>Deallocate the permutation P.<p><dl compact><dt><b>Note:</b></dt><dd>Complexity: O( |P| ) </dd></dl><dl compact><dt><b>Precondition:</b></dt><dd>P must be a valid gdsl_perm_t </dd></dl><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>P</em> </td><td>The permutation to destroy </td></tr> </table></dl><dl compact><dt><b>See also:</b></dt><dd><a class="el" href="group__gdsl__perm.html#g5ac48f8e5aed0700bf6d74525ab4dc5f">gdsl_perm_alloc()</a> <p><a class="el" href="group__gdsl__perm.html#ge3ba6e6c706cf1ddeeb7ca810762b0ea">gdsl_perm_copy()</a> </dd></dl> </td> </tr></table><a class="anchor" name="ge3ba6e6c706cf1ddeeb7ca810762b0ea"></a><!-- doxytag: member="gdsl_perm.h::gdsl_perm_copy" ref="ge3ba6e6c706cf1ddeeb7ca810762b0ea" args="(const gdsl_perm_t P)" --><p><table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"><a class="el" href="group__gdsl__perm.html#gd6fc9c69f61c5703242070522910bea8">gdsl_perm_t</a> gdsl_perm_copy </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="group__gdsl__perm.html#gd6fc9c69f61c5703242070522910bea8">gdsl_perm_t</a> </td> <td class="mdname1" valign="top" nowrap> <em>P</em> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr></table><table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td><p>Copy a permutation. <p>Create and return a copy of the permutation P.<p><dl compact><dt><b>Note:</b></dt><dd>Complexity: O( |P| ) </dd></dl><dl compact><dt><b>Precondition:</b></dt><dd>P must be a valid gdsl_perm_t. </dd></dl><dl compact><dt><b>Postcondition:</b></dt><dd>The returned permutation must be deallocated with gdsl_perm_free. </dd></dl><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>P</em> </td><td>The permutation to copy. </td></tr> </table></dl><dl compact><dt><b>Returns:</b></dt><dd>a copy of P in case of success. <p>NULL in case of insufficient memory. </dd></dl><dl compact><dt><b>See also:</b></dt><dd><a class="el" href="group__gdsl__perm.html#g5ac48f8e5aed0700bf6d74525ab4dc5f">gdsl_perm_alloc</a> <p><a class="el" href="group__gdsl__perm.html#g6b47f17955cf07b9152f140f12f95082">gdsl_perm_free</a> </dd></dl> </td> </tr></table><a class="anchor" name="gb4feda5cbd58558d67c49244c33a4481"></a><!-- doxytag: member="gdsl_perm.h::gdsl_perm_get_name" ref="gb4feda5cbd58558d67c49244c33a4481" args="(const gdsl_perm_t P)" --><p><table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">const char* gdsl_perm_get_name </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="group__gdsl__perm.html#gd6fc9c69f61c5703242070522910bea8">gdsl_perm_t</a> </td> <td class="mdname1" valign="top" nowrap> <em>P</em> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr></table><table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td><p>Get the name of a permutation. <p><dl compact><dt><b>Note:</b></dt><dd>Complexity: O( 1 ) </dd></dl><dl compact><dt><b>Precondition:</b></dt><dd>P must be a valid gdsl_perm_t </dd></dl><dl compact><dt><b>Postcondition:</b></dt><dd>The returned string MUST NOT be freed. </dd></dl><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>P</em> </td><td>The permutation to get the name from </td></tr> </table></dl><dl compact><dt><b>Returns:</b></dt><dd>the name of the permutation P. </dd></dl><dl compact><dt><b>See also:</b></dt><dd><a class="el" href="group__gdsl__perm.html#gceca0436e5a36d5d18f660ac095b1c3e">gdsl_perm_set_name()</a> </dd></dl> </td> </tr></table><a class="anchor" name="gc9b83edf2f8ec8ad479586219881cc93"></a><!-- doxytag: member="gdsl_perm.h::gdsl_perm_get_size" ref="gc9b83edf2f8ec8ad479586219881cc93" args="(const gdsl_perm_t P)" --><p><table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"><a class="el" href="group__gdsl__types.html#g9c34ac44da309b004570530c8cec8a0e">ulong</a> gdsl_perm_get_size </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="group__gdsl__perm.html#gd6fc9c69f61c5703242070522910bea8">gdsl_perm_t</a> </td> <td class="mdname1" valign="top" nowrap> <em>P</em> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr></table><table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td><p>Get the size of a permutation. <p><dl compact><dt><b>Note:</b></dt><dd>Complexity: O( 1 ) </dd></dl><dl compact><dt><b>Precondition:</b></dt><dd>P must be a valid gdsl_perm_t </dd></dl><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>P</em> </td><td>The permutation to get the size from. </td></tr> </table></dl><dl compact><dt><b>Returns:</b></dt><dd>the number of elements of P (noted |P|). </dd></dl><dl compact><dt><b>See also:</b></dt><dd><a class="el" href="group__gdsl__perm.html#g6b88e7e20a9942a1da01c23d2ef8936c">gdsl_perm_get_element()</a> <p><a class="el" href="group__gdsl__perm.html#ga5e0d0afabe6d79d5ce04da174b8667b">gdsl_perm_get_elements_array()</a> </dd></dl> </td> </tr></table><a class="anchor" name="g6b88e7e20a9942a1da01c23d2ef8936c"></a><!-- doxytag: member="gdsl_perm.h::gdsl_perm_get_element" ref="g6b88e7e20a9942a1da01c23d2ef8936c" args="(const gdsl_perm_t P, const ulong INDIX)" --><p><table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"><a class="el" href="group__gdsl__types.html#g9c34ac44da309b004570530c8cec8a0e">ulong</a> gdsl_perm_get_element </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const <a class="el" href="group__gdsl__perm.html#gd6fc9c69f61c5703242070522910bea8">gdsl_perm_t</a> </td> <td class="mdname" nowrap> <em>P</em>, </td>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -